<返回更多

binlog2sql的安装及使用方法

2023-05-11    玩转Linux与MySQL
加入收藏

背景:

binlog2sql是一个闪回工具,所谓闪回就是在误操作之后的挽回措施,比如误执行了一个delete语句,那么binlog2sql可以将这个delete语句变为insert语句,你重新执行下这个insert语句就好了,

官方文档:
https://Github.com/danfengcao/binlog2sql

安装:

yum install -y git

git clone https://github.com/danfengcao/binlog2sql.git && cd binlog2sql

wget https://bootstrap.pypa.io/pip/2.7/get-pip.py

Python/ target=_blank class=infotextkey>Python get-pip.py

pip install -r requirements.txt

 

使用:

在my.cnf中添加如下参数后重启数据库:

[MySQLd]

server_id = 1

log_bin = /var/log/mysql/mysql-bin.log

max_binlog_size = 1G

binlog_format = row

binlog_row_image = full

在数据库中执行一条插入sql,假设是误操作,使用binlog2sql解析binlog中的这条sql

[root@localhost binlog2sql]# python binlog2sql/binlog2sql.py -uroot -p11111 -dzss -taa --start-file='mysql-bin.000016'

INSERT INTO `zss`.`aa`(`age`, `name`, `name1`) VALUES (5, 'a', 's'); #start 4 end 421 time 2023-05-08 15:03:32

使用binlog2sql反转误操作的sql

[root@localhost binlog2sql]# python binlog2sql/binlog2sql.py --flashback -uroot -p11111 -dzss -taa --start-file='mysql-bin.000016'

DELETE FROM `zss`.`aa` WHERE `age`=5 AND `name`='a' AND `name1`='s' LIMIT 1; #start 4 end 421 time 2023-05-08 15:03:32

进行闪回:

在数据库中执行上面反转得到的sql

 

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>