记一次腾讯云MySQL数据库数据回滚

Posted zeussbook

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记一次腾讯云MySQL数据库数据回滚相关的知识,希望对你有一定的参考价值。

如题,因为操作人员的问题,需要对数据库数据进行回滚。

技术图片

 可以看到,设置了7天自动备份,且是物理冷备。

 什么是物理冷备?科普一下:

(1)热备:在数据库运行时,直接进行备份,对运行的数据库没有影响。
(2)冷备:在数据库停止运行的时候进行备份,这种备份方式最为简单,只需要拷贝数据库物理文件即可。
(3)温备:同样是在数据库运行的时候进行备份的,但对当前数据库的操作会产生影响。

热备份的缺点:

  1.尽量不要出错,否则后果会很严重。
  2.如果热备份不成功,所得结果不可用于时间点的数据恢复。
  3.维护的工作比较困难。

冷备份的缺点:

  1.单独使用时,只能提供到"某一时间点的上"的恢复。

  2.再实施备份的全过程中,数据库必须是关闭状态。

  3.不能按表或按用户恢复。

物理备份:(冷热备份都属于物理备份)
直接复制数据文件进行的备份
优点:不需要其他的工具,直接复制就好,恢复直接复制备份文件即可
缺点:与存储引擎有关,跨平台能力较弱

逻辑备份:
从数据库中导出数据另存而进行的备份
优点:能使用编辑器处理,恢复简单,能基于网络恢复,有助于避免数据损坏
缺点:备份文件较大,备份较慢,无法保证浮点数的精度,使用逻辑备份数据恢复后,还需要手动重建索引,十分消耗cpu资源。

综上,如果你不是大牛大能,物理备份还是选择冷备份吧。

可以看到,物理备份的大小是98MB,而实际项目中最少有4个数据库。而且这个文件下载下来是.xb文件,无法直接查看内容。

我的理解是对更新的部分做了备份。

怎么用了,看腾讯给的文档 https://cloud.tencent.com/document/product/236/33363 这个是linux操作环境,原来是加密过的。

当然不用那么麻烦,因为腾讯云数据库还有个回档功能,操作文档https://cloud.tencent.com/document/product/236/7276

这个回档时间范围是设置的自动备份的时间范围,因此这里是7天。运维人员一定要勤上线检查问题。

技术图片

 

等个四五分钟,几百MB的数据库就回档成功。启动项目一看,怎么数据还是没变啊。

那是因为回档的数据库名后面加了_bak,这样不影响在线的项目。把原来的数据库删掉,或者把名字对换过来就可以了。当然期间暂停项目。

以上是关于记一次腾讯云MySQL数据库数据回滚的主要内容,如果未能解决你的问题,请参考以下文章

记一次差点删库跑路的事故

记一次腾讯云部署项目过程

学习笔记:腾讯云——服务器mysql操作

记一次血淋淋的MySQL崩溃修复案例

记一次mysql数据恢复

记一次java连接远程mysql数据库