前提数据库开启了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内容后发现数据已恢复: