首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
617953997
V2EX  ›  数据库

没想到我也会有删库跑路的一天

  •  
  •   617953997 · 11 天前 via Android · 2854 次点击
    今天真是操蛋的一天。
    事情经过是这样的:
    以前为 table 建了一个临时表 table_temp.
    今天把临时表删掉的时候执行了一条语句:
    delete from table_temp.
    然后感觉好慢,3 秒钟过去了还没完,表里大概 100W 数据。
    所以我把 delete from 换成了 truncate table 。然后将鼠标光标放在 table 后面,按住鼠标往前一拉,执行!

    当时还没有意识到删错表了。
    等到我 insert into table_temp select * from table 看到 0 行被插入的时候,我傻眼了,然后就是经典的大脑一片空白。
    随后联系 dba,数据库没开闪回。数据回不来了。
    不幸中的万幸是,这个表不是关键业务表,旧数据还有。
    职业生涯第一次生产库删错表,提醒自己以后必须要长记性,注意力要集中。我 Tm 再也不用 truncate 了...
    fanyp123
        1
    fanyp123   11 天前   ❤️ 16
    我也删过,项目经理帮我背的锅,他被辞退了,几年后我介绍他去了埃森哲,现在我也在埃森哲了
    HankAviator
        2
    HankAviator   11 天前
    有一次手残执行了 rm -rf ./* 后(对就是那个经典笑话)也是大脑空白,不过好在加了点,当时在 ~ 下面
    123444a
        3
    123444a   11 天前 via Android
    生产库不应该有 temp,dba 执行任何生产库主要命令, 一切生产事故都是领导责任
    Licsber
        4
    Licsber   10 天前
    删库有了 跑路呢? 文题不符啊 [狗头]
    clayyj1210
        5
    clayyj1210   10 天前
    生产库还是应该 double check 。而且操作的应该不是自己才对。除非自己是运维或者 dba 。
    哦,也可能是 fashion 的 devops 。
    hantsy
        6
    hantsy   10 天前
    这个怎么说了,我觉得最奇怪的是为什么生产环境还可以这么上去乱来。
    Sunkz
        7
    Sunkz   10 天前
    之前看过一句话, mysql 可以恢复到两周内任一时刻😶
    yjxjn
        8
    yjxjn   10 天前
    @fanyp123 大佬在埃森哲哪个 site 呀?上海还是大连?埃森哲最近 HC 缩紧了么?
    hoyixi
        9
    hoyixi   10 天前
    线上环境?你(开发?)可以随便删删改改来玩,那还要养个 DBA 干嘛
    LiuJiang
        10
    LiuJiang   10 天前
    我也删过,不过是自己电脑上的数据,当时脑抽了下。
    whywhywhy
        11
    whywhywhy   10 天前 via Android
    这个指令触发器都拦不住,很烦
    vus520
        12
    vus520   10 天前
    你们居然有 DBA
    TypeError
        13
    TypeError   10 天前
    所以要收紧权限,执行个 sql 自己本地、测试环境测几次,再提交一个工单审核个几个流程,这才叫保险

    如果没跑路赶紧推动你们公司也这么干吧,就算你自己是运维或者 DBA,也用这个流程约束自己
    williamZXS
        14
    williamZXS   10 天前
    曾经不小心在自己的服务器上 rm -rf /*
    designer
        15
    designer   10 天前 via iPhone
    还好我只会 phpMyAdmin
    jakezh
        16
    jakezh   10 天前 via iPhone
    删过用户表 还好有备份
    romisanic
        17
    romisanic   10 天前
    找 dba 啊 没有 dba 就自己去找日志恢复吧
    areless
        18
    areless   10 天前 via Android
    是他是他,是黑衣人入侵了系统,执行了 rm -rf
    /*
    mikicomo
        19
    mikicomo   10 天前
    开发自己上服务器执行产线 sql ?
    opengps
        20
    opengps   10 天前 via Android
    删库错误,我只误删过一个备注列,客服同事辛苦维护的几千个客户的属性被我搞没了
    ajaxfunction
        21
    ajaxfunction   10 天前
    看来没有删库经历的程序员,是不完美的
    exploreXin
        22
    exploreXin   10 天前
    一切人肉执行的数据库删除动作都不能保证 100%安全,无数血的教训告诉人们,删数据这种事情要交给脚本程序去做,操作的脚本反复测试,可以极大降低手残的风险,那种连测试环境都没有,直接线上改 bug,正式库删东西的公司,出事了也不冤枉,团队规范没有,出事了也不能怪个人。
    billwang
        23
    billwang   10 天前
    生产库竟然不开归档和备份,你们真是太大意了。同时说明这个库不怎么重要。我们测试库都开的。
    littlewing
        24
    littlewing   10 天前 via iPhone
    1 生产库居然没有备份
    2 既然有 DBA,为什么还要给 RD 这么高权限的数据库用户
    yeqizhang
        25
    yeqizhang   10 天前
    闪回都不开,说明这数据都不重要[狗头]
    PUBG98k
        26
    PUBG98k   10 天前
    居然还有专属 DBA 。有点羡慕了。
    我们公司,一个人,负责 管理 4000 台服务器运维 + 负责编写 PHP 后台 网站 + 任何需要用到 php 的地方或者网页 +数据库
    7654
        27
    7654   10 天前
    吓得我连忙看看手里的 DBA 帐号:doge
    cabing
        28
    cabing   10 天前
    @fanyp123 你们都得到了成长:)
    cabing
        29
    cabing   10 天前
    不要删。要不重建表。。

    @PUBG98k 4000 台服务器,有点 6 啊。
    metrxqin
        30
    metrxqin   10 天前 via Android
    Even a monkey can destroy a system. the true master saves a malfunctioned system.
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3015 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 11:43 · PVG 19:43 · LAX 04:43 · JFK 07:43
    ♥ Do have faith in what you're doing.