|
|
51CTO旗下网站
|
|
移动端

微盟程序员删库导致股价暴跌10亿,如何防止程序员删库到跑路

这两天有个特别火的事情,段子竟然成真了!微盟公司有个运维人员人员,因为个人原因,把公司的数据库删个精光,整个网站崩溃,因此,微盟公司估计大跌近10个亿。

作者:沙茶敏碎碎念来源:今日头条|2020-02-27 16:10

这两天有个特别火的事情,段子竟然成真了!微盟公司有个运维人员人员,因为个人原因,把公司的数据库删个精光,整个网站崩溃,因此,微盟公司估计大跌近10个亿。程序员删库到跑路,这个我们以前常说的段子,没想到又一次在现实中发生了!在今天早些时候,微盟已经宣布新用户已经恢复使用,而旧用户的数据将在28号前恢复。数据库对于一个系统,就好比一个建筑的根基,数据库被删库,就好比摩天大楼的支持柱损坏。既然数据库这么重要,那么,我们这么保证数据库的安全,防止数据被删除呢?

曾经有人这么想,如果我杭州的支付宝的数据库炸了,那么我们是不是可以不用还花呗了。答案显然不可能,在现实的生产环境中,我们很少只使用一个数据库,通常一台机器会发生单点故障,那样子系统的可用性明显就不高。在生产环境中,我们通常会使用多个数据库,有些是主库的备份,如果这个备份只是当主库发生故障的时候用来应急,我们称之为冷备。每次数据库的变更操作,都会同步到备库,假如主库发生故障,我们可以切换到备库,这样子用户几乎没有感知到后台发生过如此惊险的事情。所以,假如程序员或者运维人员恶意摧毁数据的硬件,或者删除数据,假如不是通过数据库命令,就不会被同步到备库上,这个时候,程序员只能删库失败。

微盟程序员删库导致股价暴跌10亿,如何防止程序员删库到跑路

image

假如数据真的是被程序员使用数据库命令删除地,并且已经同步到备库上,这个时候该怎么办呢?一般情况下,我们的数据库都是有离线备份的,也就是每天三更半夜的时候,都会把前一天的存量数据打包起来,放到别的机器上,以备不时之需。那么对于今天才产生的新数据,怎么处理呢?基本上,每个数据库操作都有日志,例如我们最常用的Mysql,就有binlog,在我们日常每次操作数据库的时候,都会写下一条对应的日志,所以,我们只要取昨天的离线数据,然后回放今天的数据即可。

微盟程序员删库导致股价暴跌10亿,如何防止程序员删库到跑路

那么如何保证数据库的安全呢?

1.限制帐户权限,核心的数据库,一般都不能随便分配写权限,想要获取写权限需要审批,并且,不同的账号,不同的数据之间要进行权限分离,避免一个账号可以删除所有库。

2.定期进行演练,进行数据恢复,一旦发生故障,也可以安然自若,不必惊慌失措。

3.最重要的,还是要善待员工,不要天天加班,开车都不能疲劳驾驶,何况是开数据库的。多给程序员放点工资,介绍女朋友,让他对生活充满信息,毕竟对生活有信心的人,才不会去铤而走险。

【编辑推荐】

  1. GaussDB T分布式集群数据库每日维护必做必知
  2. 为什么你需要云原生数据库
  3. 数据库优化不为人知道的阶段
  4. 四种优秀的数据库设计工具
  5. 含PPT下载 | 如何看待数据库的未来?
【责任编辑:华轩 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

消息队列Kafka运维实践攻略

消息队列Kafka运维实践攻略

入门级消息队列
共3章 | 独行侠梦

84人订阅学习

编程零基础,Scratch 开发小游戏

编程零基础,Scratch 开发小游戏

游戏化编程
共5章 | googlingman

32人订阅学习

Docker一键部署,3小时学以致用

Docker一键部署,3小时学以致用

Docker学以致用
共3章 | jextop

109人订阅学习

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO官微