小编给大家分享一下MySQL数据误删除怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!
<强>概述强>
Binlog2sql是一个Python开发开源的MySQL Binlog解析工具,能够将Binlog解析为原始的SQL,也支持将Binlog解析为回滚的SQL,去除主键的插入SQL是DBA和运维人员数据恢复好帮手。
<强>一、安装配置强>
1.1用途
数据快速回滚(闪回)
主从切换后新主人丢数据的修复
从Binlog生成标准SQL,带来的衍生功能
支持MySQL5.6, 5.7
1.2安装
shell>git克隆https://github.com/danfengcao/binlog2sql.git,,cd binlog2sql
shell>pip安装- r让
<强>二、使用方法强>
2.1使用前配置
2.1.1参数配置
(mysqld), server_id =, 1, log_bin =,/var/log/mysql/mysql-bin.log 时间=max_binlog_size 1 g 时间=binlog_format row binlog_row_image =,完整的
2.1.2用户需要的最小权限集合
选择,超级/replication 客户,,replication 奴隶
建议授权
选择,超级/replication 客户,,replication 奴隶
权限说明
- <李>
选择:需要读取服务器端information_schema。列表,获取表结构的元信息,拼接成可视化的sql语句
李> <李>超级/复制客户端:两个权限都可以,需要执行& # 39;显示主人身份# 39;,获取服务器端的binlog列表
李> <李>复制奴隶:通过BINLOG_DUMP协议获取binlog内容的权限
李>2.2基本用法
2.2.1基本用法
解析出标准sql
shell>, python binlog2sql.py -h227.0.0.1 -P3306 -uadmin - p # 39;行政与# 39;,-dtest -t test3 test4 ——启动文件=& # 39;mysql-bin.000002& # 39;
输出:
INSERT INTO ‘测试’。‘test3’(“addtime”,“数据”,“id”), VALUES (& # 39; 2016 - 12 - 10, 13:03:38& # 39;,, & # 39;英语# 39;,,4);,# start 570年,最终获得736, UPDATE ‘测试’。‘test3’, SET “addtime”=& # 39; 2016 - 12 - 10, 12:00:00& # 39;,,“数据”=& # 39;中文& # 39;,,“id”=3, WHERE “addtime”=& # 39; 2016 - 12 - 10, 13:03:22& # 39;,以及“数据”=& # 39;中文& # 39;,以及“id”=3, LIMIT 1;, # start 763年,最终获得954, DELETE 得到‘测试’。‘test3’, WHERE “addtime”=& # 39; 2016 - 12 - 10, 13:03:38& # 39;,以及“数据”=& # 39;英语# 39;,以及“id”=4, LIMIT 1;, # start 981年,最终获得1147
解析出回滚SQL
shell>, python binlog2sql.py ——flashback -h227.0.0.1 -P3306 -uadmin - p # 39;行政与# 39;,-dtest -ttest3 ——启动文件=& # 39;mysql-bin.000002& # 39;,,起始位置=763,,停止位置=1147
输出:
INSERT INTO ‘测试’。‘test3’(“addtime”,“数据”,“id”), VALUES (& # 39; 2016 - 12 - 10, 13:03:38& # 39;,, & # 39;英语# 39;,,4);,# start 981年,最终获得1147, UPDATE ‘测试’。‘test3’, SET “addtime”=& # 39; 2016 - 12 - 10, 13:03:22& # 39;,,“数据”=& # 39;中文& # 39;,,“id”=3, WHERE “addtime”=& # 39; 2016 - 12 - 10, 12:00:00& # 39;,以及“数据”=& # 39;中文& # 39;,以及“id”=3, LIMIT 1;, # start 763年,最终获得954
2.2.2选项
<强> mysql连接配置强>
- h主机;- p端口;- u用户;密码- p
<>强解析模式强>
——stop-never持续解析binlog。可选。默认假,同步至执行命令时最新的binlog位置。
- k,——no-primary-key对插入语句去除主键。可选。默认假
- b,——倒叙生成回滚SQL,可解析大文件,不受内存限制。可选。默认假。与stop-never或no-primary-key不能同时添加。
——back-interval - b模式下,每打印一千行回滚SQL,加一句多睡少秒,如不想加睡眠,请设为0。可选。默认1.0 .
<强>解析范围控制强>
——启动文件起始解析文件,只需文件名,无需全路径。必须。
——起始位置/start-pos起始解析位置。可选。默认为启动文件的起始位置。
——停止文件/文件结束终止解析文件。可选。默认为启动文件同一个文件。若解析模式为stop-never,此选项失效。
——停止位置/end-pos终止解析位置。可选。默认为停止文件的最末位置;若解析模式为stop-never,此选项失效。