MySQL数据误删除怎么办

  介绍

小编给大家分享一下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,此选项失效。

MySQL数据误删除怎么办