V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
ifconfig
V2EX  ›  程序员

误删了线上数据库用户资料表

  •  
  •   ifconfig · Oct 27, 2015 · 6622 views
    This topic created in 3846 days ago, the information mentioned may be changed or developed.

    运营: XXX ,帮我删一下线上某个用户资料
    技术:好的,马上清空用户资料表!

    只有一星期前的数据,第一时间恢复了,但无补于事了,还有很多用户资料不见了。
    服务器是单机,马上做了 crontab 每天备份。

    这件事告诉我,不作死就不会死,想死的心都有了,我宁愿罚我一个星期不许打灰机啊。
    直接操作 phpMyAdmin 要打起一百分精神!!!

    41 replies    2015-10-28 10:25:03 +08:00
    loca1h0st
        1
    loca1h0st  
       Oct 27, 2015
    binlog?
    ScotGu
        2
    ScotGu  
       Oct 27, 2015
    什么业务? 竟然还可以清空用户资料?! 一般不只是冻结么。
    dowern
        3
    dowern  
       Oct 27, 2015
    现有服务器每 4 个小时备份一次数据库...同时开专业版 clashplan 自动同步所有重要文件到云端和本地. 重要资料丢不起...
    jarlyyn
        4
    jarlyyn  
       Oct 27, 2015
    没用 binlog?
    canesten
        5
    canesten  
       Oct 27, 2015
    论 Oracle 的优越性
    默认开 SCN 的话,闪回即可。
    ifconfig
        6
    ifconfig  
    OP
       Oct 27, 2015
    @jarlyyn 单机,没主从,也没做备份,哭瞎了
    dong3580
        7
    dong3580  
       Oct 27, 2015
    如果是 MSSQL ,应该在日志中是有的,你那个我就不知了。
    建议每天备份所有的数据库,公司的话这是必须的
    ifconfig
        8
    ifconfig  
    OP
       Oct 27, 2015
    @canesten 论备份的重要性真的体会到了
    markmx
        9
    markmx  
       Oct 27, 2015
    MYSQL 日志也没有吗.有的话 可以恢复的
    ifconfig
        10
    ifconfig  
    OP
       Oct 27, 2015
    @loca1h0st 没做主从也没备份 binlog 有用?
    loca1h0st
        11
    loca1h0st  
       Oct 27, 2015
    @ifconfig 开了 binlog 就行
    jarlyyn
        12
    jarlyyn  
       Oct 27, 2015
    Ansen
        13
    Ansen  
       Oct 27, 2015
    还好我机智的每 10 分钟做差异备份
    yangxiongwei
        14
    yangxiongwei  
       Oct 27, 2015
    可以从 binlog 把数据都扫出来
    lecher
        15
    lecher  
       Oct 27, 2015 via Android   ❤️ 1
    业务有问题哦,既然运营有删除用户信息的操作,就应该把功能做到管理系统里面让运营自己去操作,而且这种一般都是伪删除,打个删除的标志位就好了。

    直接去数据库跑 sql 太危险了。每日备份也不够,至少再开个 binlog ,同时把备份和 binlog 同步到其它服务器做为简单的容灾。这样操作都有记录。
    lyragosa
        16
    lyragosa  
       Oct 27, 2015
    用 binlog 回溯就行了。
    pupboss
        17
    pupboss  
       Oct 27, 2015
    下次用 deactivate 字段...误删太正常了,脑子一抽的事
    wdlth
        18
    wdlth  
       Oct 27, 2015
    可以直接不分配 DELETE 权限,只能做伪删除。
    ifconfig
        19
    ifconfig  
    OP
       Oct 27, 2015
    没开 binlog ,绝望了 @lyragosa @yangxiongwei
    youxiaer
        20
    youxiaer  
       Oct 27, 2015
    基础工作没做好啊,备份没做好, binlog 也没开。线上操作要是不注意出了问题,那真是没辙啊……
    另外,直接从命令行登录操作,会比 phpMyAdmin 好很多吧
    adexbn
        21
    adexbn  
       Oct 27, 2015 via iPhone
    @youxiaer 我同事上周刚刚从命令行操作删掉了整个库
    zacard
        22
    zacard  
       Oct 27, 2015
    竟然有物理删除。。。
    learnshare
        23
    learnshare  
       Oct 27, 2015
    清空数据表...
    zhicheng
        24
    zhicheng  
       Oct 27, 2015
    哈哈哈哈,等哥做个 Dropbox for Server 好了〜
    Felldeadbird
        25
    Felldeadbird  
       Oct 27, 2015
    没备份的话,那就没办法了
    LioMore
        26
    LioMore  
       Oct 27, 2015
    @adexbn 同事的基础能力有待提高。。
    hippoboy
        27
    hippoboy  
       Oct 27, 2015
    竟然随意删除正式数据,不严谨啊
    adexbn
        28
    adexbn  
       Oct 27, 2015 via iPhone
    @LioMore ,正式库和测试库名字稍有不同,自动补全没留心
    likuku
        29
    likuku  
       Oct 27, 2015
    Peter 你好~
    jodoo
        30
    jodoo  
       Oct 27, 2015
    不要紧的,应该是可以恢复的,只是需要花费你不少时间。具体办法和思路 Google 一下就知道了,呵呵。
    b821025551b
        31
    b821025551b  
       Oct 27, 2015
    用户信息这种数据难道不是用 status 之类的字段控制是否生效,而不是真正意义上的删除么?
    ifconfig
        32
    ifconfig  
    OP
       Oct 27, 2015
    @b821025551b 删的是用户资料表,而不是用户表,用户资料一般都是直接 delete
    k9982874
        33
    k9982874  
       Oct 27, 2015
    @ifconfig 你们公司真耿直,用户资料转手一卖都是钱啊
    ifconfig
        34
    ifconfig  
    OP
       Oct 27, 2015
    怎么卖,有渠道不?
    ifconfig
        35
    ifconfig  
    OP
       Oct 27, 2015
    @k9982874 怎么卖,有渠道不?
    jdlau
        36
    jdlau  
       Oct 27, 2015 via Android
    多大仇
    300w
        37
    300w  
       Oct 27, 2015
    @ifconfig 看到商机了。。。
    youxiaer
        38
    youxiaer  
       Oct 27, 2015
    @adexbn 你同事是指的 DBA 吗?一般都不给 RD 删库这么大的权限。如果是 DBA 误操作,应该可以迅速恢复,否则赶紧开除了吧。
    bbiao
        39
    bbiao  
       Oct 27, 2015
    线上数据为啥不用逻辑删除呢???
    ragnaroks
        40
    ragnaroks  
       Oct 27, 2015
    不管是从代价上还是原则上都不应该执行 delete,连 log 都没有真是没有办法了
    loryyang
        41
    loryyang  
       Oct 28, 2015
    和 linux 上的 rm -rf 一个感觉
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3438 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 93ms · UTC 12:03 · PVG 20:03 · LAX 05:03 · JFK 08:03
    ♥ Do have faith in what you're doing.