使用 mysqldump 实现 MySQL 5.7 基于时间点的恢复

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用 mysqldump 实现 MySQL 5.7 基于时间点的恢复相关的知识,希望对你有一定的参考价值。

创建测试数据
技术分享图片
全备数据库

mysqldump --single-transaction --flush-logs --master-data=2 --all-databases --triggers --routines --events --set-gtid-purged=off> backup.sql

再新增测试数据
技术分享图片
删除表中所有数据
技术分享图片
确认最近一次备份后的二进制日志保存文件
技术分享图片
技术分享图片

确认删除数据的时间点

mysqlbinlog --base64-output=decode-rows -v mysql01-bin.000011 > result.sql
vim result.sql 

技术分享图片
还原数据库

mysql < backup.sql 

检查表中的数据,说明还原成功
技术分享图片
恢复删除的数据

mysqlbinlog --stop-datetime="2018-09-06 16:42:36" --skip-gtids mysql01-bin.000011 | mysql

检查表中的数据,说明已经恢复成功
技术分享图片

以上是关于使用 mysqldump 实现 MySQL 5.7 基于时间点的恢复的主要内容,如果未能解决你的问题,请参考以下文章