使用binlog还原mysql数据库及数据

不小心将数据库删除后,若有启用日志操作记录可通过binlog进行数据还原(在Mysql下执行)
  查询是否开启 ==> show variables like 'log_bin';

  

  查询正在使用的操作记录 ==> show master status;

   

查找binlog文件(不一样的版本对应的名字会不相同),我的路径存放在/var/lib/mysql/binlog.000*** (cd ../ ==> cd var ==> cd lib ==> cd mysql ==> ls)

    

我这里是直接通过sql语句查找对应的日志内容(其他方法自行百度),然后将需要的内容全部导出查看

  sql ==> show binlog events in 'binlog.000003'; 

  

 找到对应的pos号之后,在命令行直接输入需要的pos导出

  mysqlbinlog --start-position=125 --stop-position=5288 /var/lib/mysql/binlog.000003 >bin.sql    (bin.sql为生成的sql文件,默认位置在root下)

最后便可在Mysql执行对应命令

  关闭日志记录 ==> set sql_log_bin=0;

  执行导出数据日志 ==> source /root/bin.sql;

 

posted @ 2021-10-12 15:45  贰竹  阅读(189)  评论(0编辑  收藏  举报