MySQL还原数据到任意时间点
实际项⽬中我们已经做了每⽇定时备份,这可以还原数据到备份时的状态。但是如果我们想要还原数据到任意两次备份中间的任意时间点,单纯使⽤备份⽂件就⽆法做到了,这需要借助mysql的binlog。
还原数据到任意时间点的主要思路:
1、通过备份⽂件还原数据
2、从binlog中筛选时间段内的⽇志,在新还原的数据上重放⽇志
操作:
1、还原备份⽂件(略)
2、筛选binlog时间段内⽇志并还原,⽰例:
#查看当前的binlog⽂件名
show master status;
#时段内⽇志筛选
mysqlbinlog --no-defaults --start-datetime='2022-02-21 23:30:00' --stop-datetime='2022-02-22 14:48:17' /datadir/mysql-bin.000020 > /tmp/binlog.sql
#还原
mysql下载哪个版本好2022source /tmp/binlog.sql
以上命令,从binlog中获取了 2⽉21⽇23点30分到 2⽉22⽇14点48分17秒之间所有在数据库上执⾏的操作,并将其在⽬标库上重放。
(完毕)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论