MyFlash是美团开源的一个回滚DML操作的工具。该工具通过解析v4版本的binlog,完成回滚操作。
详细参考:https://github.com/Meituan-Dianping/MyFlash
研发同学误删数据后,使用该工具非常顺畅地恢复了误删数据,记录如下:
#下载安装
git clone https://github.com/Meituan-Dianping/MyFlash.git
cd MyFlash/
yum install glib2*
gcc -w `pkg-config --cflags --libs glib-2.0` source/binlogParseGlib.c -o binary/flashback
cd binary/
./flashback --help
#查找对应的binlog
show master status;flush logs
#生成回滚文件
time ./flashback --tableNames=xxx --sqlTypes=DELETE --binlogFileNames=/data/dbatemp/rsyncd/mysql-bin.000428
#查看生成文件内容
mysqlbinlog --base64-output=DECODE-ROWS -vv binlog_output_base.flashback | more
#将生成文件加载到库中
mysqlbinlog binlog_output_base.flashback | mysql --defaults-file=/data/mysql_3563/my.cnf test
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有