fuhai0815

一、起因:

  由于误删数据,造成服务报错,经排查发现误删了一个表,造成数据不一致。但由于时间较近,范围不太确定,所以采用mysqlbinlog日志进行时间恢复。

二、恢复:

  1、将前一天的mysql-bin.log日志,通过mysqlbinlog 命令可以查看具体操作记录

  2、先将完整的数据,进行一次导入

  3、再将binlog日志进行精细化恢复,命令

  mysqlbinlog mysql-bin.000014 --start-datetime=\'2018-03-14 12:00:00\' --stop-datetime=\'2018-03-14 16:30:00\' -d logbin  > logbin.sql

  4、-d 指定数据库 ,如果不加 -d logbin 将会连二进制日志一起被导出

  5、如果确定库名,可以直接导入:mysqlbinlog  mysql-bin.000002 --start-datetime=\'2016-12-14 17:10:43\' --stop-datetime=\'2016-12-14 17:17:53\' -d test1 | mysql -uroot -p (建议先导出后查看数据结构,确保无误后再导入数据。)

 

分类:

技术点:

相关文章: