mysql delete误删除数据,binlog日志恢复

1.查看binlog是否开启

show variables like '%log_bin%';

2.查看数据文件存放路径:bin-log路径

show variables like '%datadir%';

3.找到删除时间段的binlog,翻译为sql

./mysqlbinlog --base64-output=decode-rows -v --database=test --start-datetime="2022-04-19 14:00:00" --stop-datetime="2022-04-19 15:25:00" "/usr/local/mysql/data/mysql-bin.000007" > /tmp/1.sql

4.在生成的 mysqllog.sql 文件同路径下 ,生成将delete翻译为insert的sql文件

cat 1.sql | sed -n '/###/p' | sed 's/### //g;s/\/\*.*/,/g;s/DELETE FROM/;INSERT INTO/g;s/WHERE/SELECT/g;' |sed -r 's/(@17.*),/\1;/g' | sed 's/@1=//g'| sed 's/@[1-9]=/,/g' | sed 's/@[1-9][0-9]=/,/g' > mysqllogOK.sql

5.打开生成的sql文件找到相应的insert,将翻译的insert语句复制到mysql里面执行。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容