最近炉石传说的数据库故障在业界传得沸沸扬扬。无论故障起因是掉电宕机还是人为失误,最终的影响是极其恶劣的,造成了无法挽回的数据丢失。对于越是大规模的数据库系统,如何设计一个可靠的备份系统越是至关重要。
大型数据备份系统设计备案策略
1.如何根据业务类型选择备份方式,逻辑备份or物理备份?
3.如何确认备份是否成功,哪一步骤出了问题
5.需要恢复时,如何做到一键恢复到指定时间点
再比如mysqldump逻辑备份时没有考虑到部分表采用utf8mb4字符集,导致恢复后的数据库乱码情况等。以UDB为例,大型备份系统主要从以下几个方面确保备份安全性:
1.备份失败监控,一旦备份失败就会发送告警信息
3.备份上传前后的MD5校验
5.备份周期选择上确保两次间隔的binlog未过期
7.备份机集群空间检测和负载均衡,确保空间富余
其中,备份的有效性测试方法大概是这样的:启几个对应版本的数据库并行测试,通过备份详细记录表获取备份后将其传送到这几个实例进行恢复测试。
备份过程的全局读锁检测,是因为备份过程中为了记录当前的pos点信息,都会执行一个flush tables with read lock的操作,但是如果当时有长SQL未执行完就会导致全局锁等待,从而阻塞后续的所有写请求。
这些备份的常规检测都会在备份系统后台定期全自动执行,保证了备份的成功率。
这种情况下由于无法获取最实时的binlog,仅仅通过历史备份只能恢复到备份时间点,而无法恢复到故障前的时间点。
UDB出于客户配置灵活,经济成本的考虑,既支持只创建单实例RDS,也可以创建高可用RDS和跨机房的master-slave RDS,对于重要的业务,一般都建议至少配置有备库。
有效的备份和恢复策略对于数据库安全的重要性不言而喻,而海量数据库的备份系统设计和实现却不是那么简单的一件事,需要考虑的细节还有很多。
希望本文对于有意研发海量DB备份系统的童鞋有一些帮助。没有意向自研的童鞋,不妨考虑将数据库迁移上云,让强大的云数据库为您的数据保驾护航。
文章标题:从炉石传说数据库故障看数据备份策略
标题来源:https://www.cdcxhl.com/news/105462.html
成都网站建设公司_创新互联,为您提供App开发、移动网站建设、商城网站、企业建站、网页设计公司、用户体验
广告
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源:
创新互联