说来好巧~前段时间正在写数据恢复应急预案,周一开发就delete掉表了,不慌不忙给恢复了,之后要经常做数据库恢复预演,加快数据的恢复时间

开源工具地址: https://github.com/danfengcao/binlog2sql

误drop表恢复,使用mysqldump备份

1.ddl删除表不能开源binlog解析sql工具做恢复,需要配合备份一起来完成ddl恢复首先使用sed命令提取出建表的sql

sed  -e \'/./{H;$!d;}\' -e  \'x;/CREATE TABLE `$table_name`/!d;q\'    $dbname.sql | mysql -u -p  -h $dbname

2.提取出insert语句

grep --ignore-case \'insert into `$table_name`\' $dbname.sql | mysql -u -p  -h $dbname

3.使用binlog2sql找到drop之前的操作

python binlog2sql.py -h -u -p -P -d -t --start-file=\'\' --start-file \'\' | mysql -u -p  -h $dbname

DML恢复

python binlog2sql.py --flashback -h  -u -p -P -d -t --start-file \'bin-log-mysqld.000011\' | mysql  -u -p -h  

版权声明:本文为weiwenbo原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/weiwenbo/p/9256986.html