关于mysql的binlog恢复数据库数据的相关总结

今天有人问我他们的数据库当中的表清空了怎么办,想到的方法就是使用binlog来恢复删除的数据。

关于binlog他是一个二进制的文件,要恢复需要通过转换成正常的sql脚本然后执行数据的恢复,或者采用管道流的方式执行(实际还是转换成脚本的形式执行)

(1)要读取binlog文件必须首先开启binlog日志查看方式如下:

查看binlog日志有没有开启
show variables like 'log_bin';

 

(2)查看binlog的目录在哪里

 ps -ef|grep mysql

 

(3)将二进制binlog转化成sql脚本文件

  mysqlbinlog mysql-bin.000002 >002.sql 

注意:这里要编辑文本当中的drop的语句,然后执行脚本,数据才能恢复

(4)将sql脚本执行导入到表当中(这里需要注意的是这个数据库必须存在)

  mysql -u root -p test < 002.sql

 

 至此数据库的数据别恢复了。

 

 具体参考下面链接:

https://www.cnblogs.com/kevingrace/p/5904800.html

https://www.cnblogs.com/martinzhang/p/3454358.html

 

 


 

posted on 2019-01-16 18:09  gxg123  阅读(559)  评论(0编辑  收藏  举报

导航