利君工作室 发表于 2021-9-3 16:58:41

【分享】数据库恢复和备份方案

前天两出了点意外,正在使用的数据库被误删除,给大家分享一下恢复的过程。由于云表自带的mysql是5.2版本,我需要使用5.7版本功能,所以使用的是自建的mysql5.7数据库。
首先:云表有定时备份功能,设置备份时间会自动备份当前数据库。
   问题:1.云表备份的数据库只会备份数据,视图和存储过程等不会备份。
             2.前两天有个视图不确,导致了备份失败。
所以定期检查备份集也是很重要的!通过这个意外,数据安全确实应作为非常重要的工作抓一下!
闲话少说,还是说一下恢复的过程。
恢复步骤:
1.在云表控制台,采用恢复数据库的方法,恢复到前两天的备份集(一般情况都没问题)。
   1.1由于我的数据库备误删除,用户信息等都没有了,所以采用的是mysql命令恢复的。
2.恢复近两天数据。
    数据库开启了binlog,所以通过mysqlbinlog 解析这两天的日志,恢复数据,还有存储过程,视图等。


优化我的云表数据备份方案:
1.用全库备份替代备份当前库。
2.本地备份的同时,在异地存储备份文件(可以是共享存储,云服务的对象存储)
3.每个库都开启binlog日志,以确保数据能恢复到故障时点
4.异地灾备。多个云表应用和云表服务器,如何快速恢复故障,提供服务呢?可采用数据迁移的方式每天迁移到备份库
如"mysqldump -h127.0.0.1 -uroot -pXXXX@3306 db1 | mysql --host=XX.XX.XX.XX -uroot2 -pXXXX@3306 -C mydb1"


最后建议自己维护的云表数据库,应用生产的环境都开起binlog,虽然对性能会有一点影响,但安全得多!

AlexmSa 发表于 2022-2-12 09:38:51

全库备份 指的是哪里?怎么备份还请细说一下

黄磊 发表于 2021-9-4 17:24:38

是本地版的嘛?还是云版本的?

小花儿0000 发表于 2021-9-7 09:17:20

感谢分享

彼得 发表于 2022-9-22 10:44:47

感谢分享!
页: [1]
查看完整版本: 【分享】数据库恢复和备份方案