Blog icon indicating copy to clipboard operation
Blog copied to clipboard

一次线上故障的反思

Open vonzhou opened this issue 5 years ago • 1 comments

过去好几天了,但是觉得还是有必要分享下这个傻逼的错误。

时间

五一之后的第一天。

经过

系统遗留的一个后门接口威力无比,可以执行任何sql,包括删除所有记录,更新所有记录。

有一天,我掉进了这个坑,一切发生的毫无征兆,意识到的那一刻头脑一片空白。

为了头方便省事,为了修复一个问题,想直接走后门修改掉,so easy。

image

复制-粘贴-执行,操作行云流水,不假思索。然后点击相关页面,一片空白,才意识到刚才执行的sql超出了预期,紧接着是用户的反馈。。。。OMG

傻逼!执行了一个没有加where条件的update语句。。。

第一反应,联系DBA,看能不能全表恢复,才知道数据恢复并没有想象中的那么快速,这种方式恢复可能需要XXX天!!

幸运的是,这张DB表对应的有离线表,才迅速通过其他方式把数据恢复了,业务不可用时间1-2小时。

总结

吃一堑长一智,我觉得在这个过程中暴露了很多的问题。

  • 使用后门,而且还没有找人review,意识就有问题
  • 生产变更不走标准流程,找死
  • 执行sql,至少先在测试环境跑一下吧,直接干到线上了,咋想的?

vonzhou avatar May 20 '20 15:05 vonzhou

无耻的笑了,因为我之前公司系统也有这样的后面,也出过事情,那个同事被开了

newhcw avatar Jun 24 '20 06:06 newhcw