点击上方“云栖社区”可以订阅哦 背景 如果你是身处数据库行业的朋友,最近可能被朋友圈的各种关于 "炉石数据被删" 、 "mongoDB遭黑客勒索" 的事件刷屏。 而就在昨天(2017-02-01)事情再一次升华, "gitlab 数据库的数据文件被rm -rf误删",数据库的恢复过程和细节有直播视频,请参考gitlab的官方解释,以免以讹传讹。 数据库是在企业中占据非常重要的位置,发生数据库被SQL注入,数据被误删的事情,不仅仅影响业务,还可能造成用户的信息被泄露。 DBA一族就像IT行业的边防战士,守卫数据是DBA的重要职责之一。 但是总有防不胜防的时候,比如失恋了,喝多了,又或者操作界面太多,来回切换过多导致人为失误率上升。 如何让数据文件被rm -rf后还能愉快的玩耍呢? 多副本 - 可以抵御rm -rf的HA 在很多传统企业中,常见的HA手段是通过多主机挂载共享存储来实现的,实际上数据只有一份,因为存储的可用性相比服务器高很多。 这种HA方式的弱点很明显,存储存在单点(当然你也可以使用多个存储,物理镜像来解决类似单点),另一方面,由于存储只有一份,或者通过镜像产生的多分,因此数据删除时具备传染性,一删全删,因此无法抵御gitlab的rm -rf操作。 这种HA方式的优点,结构比较简单,数据一致性比较好保证。 多副本HA与容灾 PostgreSQL 从9.1开始就支持了双副本的同步模式流复制,多副本异步的流复制模式,9.6新增了多副本同步模式。 使用这种方式,即使主库的数据文件被rm -rf了,由于同步是基于REDO的,所以操作系统的命令并不会被传染,可以抵御rm -rf的误操作。 参考 《PostgreSQL 数据库HA》 https://github.com/digoal/PostgreSQL_HA_with_primary_standby_2vip?spm=5176.100239.blogcont69179.28.LOp4Oc 《PostgreSQL 金融行业高可用和容灾解决方案》 https://github.com/digoal/blog/blob/master/201512/20151224_01.md?spm=5176.100239.blogcont69179.29.nWCmCB |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|