当前位置: 首页 > 科技观察

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

时间:2023-03-16 00:59:40 科技观察

这两天特别火的一件事,笑话竟然是真的!微盟有一名运维人员,由于个人原因,公司数据库被彻底删除,整个网站瘫痪。因此,微盟估计暴跌近10亿。程序员删库跑路了。这个我们常说的笑话,没想到现实中又发生了!今日早些时候,微盟宣布新用户已恢复使用,老用户数据发布将于28号前恢复。对于一个系统来说,数据库就像是一座大厦的地基,如果删除了数据库,就如同摩天大楼的支柱被破坏了。既然数据库如此重要,那么我们如何保证数据库的安全,防止数据被删除呢?曾经有人认为,如果杭州的支付宝数据库炸了,那我们就没法还钱了。答案显然是不可能的。在真实的生产环境中,我们很少只使用一个数据库。通常单机都会出现单点故障,那么子系统的可用性显然不高。在生产环境中,我们通常会使用多个数据库,其中一些数据库是主数据库的备份。如果这种备份只是在主库出现故障时应急使用,我们称之为冷备份。每次执行数据库更改操作时,都会同步到备库。如果主库出现故障,我们可以切换到备库,让用户几乎察觉不到后台发生了这么危险的事情。因此,如果程序员或者运维人员恶意破坏数据的硬件,或者删除数据,如果不是通过数据库命令,是不会同步到备库的。这时候程序员只能删除数据库,失败了。image如果数据真的被程序员使用数据库命令删除了,并且已经同步到备库,这时候我们该怎么办呢?一般情况下,我们的数据库都是离线备份的,也就是每天半夜备份,有时会把前一天的库存数据打包放到其他机器上,以备不时之需。那么如何处理今天产生的新数据呢?基本上,每个数据库操作都有一个日志。比如我们最常用的Mysql就有一个binlog。我们每天每次操作数据库都会写一条对应的日志,所以我们只需要取昨天的离线数据,回放今天的数据即可。那么如何保证数据库的安全呢?1.限制账号权限。一般核心数据库不能随便分配写权限。要获得写入权限,需要批准。此外,不同的账户和不同的数据必须相互隔离。避免一个账号可以删除所有库。2、定期进行演练和数据恢复。一旦出现故障,可以高枕无忧。3、最重要的是要善待员工,不要天天加班,也不要累着开车,更不要开一个数据库。给程序员更多的薪水,介绍一个女朋友,让他充满生活的信息。毕竟,对生活有信心的人是不会去冒险的。

猜你喜欢