首页 > 技术文章 > 通过mysqlbinlog 恢复数据

prettrywork 2018-08-15 18:42 原文

前提数据库开启了bin_log记录日志。

查看日志

刷新日志

flush logs;

再次查看

show binary logs;

向表中插入一条数据

现在执行delete误操作,删除所有的数据。

delete from admin;

先查看binlog,生成002.sql:
mysqlbinlog mysql-bin.000002 > 002.sql

查看002.sql,并只摘取delete部分内容:

可以看到在时间2018-08-15 18:14:15我们做了delete误操作。现在需要用mysqlbinlog恢复到这个时间点前的数据:

mysqlbinlog  --start-date="2018-08-15 16:30:00" --stop-date="2018-08-15 17:00:00" mysql_bin.000001 >admin.sql

执行admin.sql内容后发现数据已恢复:

 

推荐阅读