第一步 安装

1.安装MySQL

2.安装Python3

[root@localhost /]#yum install python3
[root@localhost /]#mkdir tools[root@localhost /]#cd tools[root@localhost tools]# lltotal 317440-rw-r--r--. 1 root root 317440 Sep 21 23:55 binlog2sql.tar[root@localhost tools]#tar -xvf binlog2sql.tar[root@localhost tools]#cd binlog2sql[root@localhost binlog2sql]# lltotal 52drwxr-xr-x. 3 mysql mysql 91 Jun 13 08:14 binlog2sqldrwxr-xr-x. 2 mysql mysql 54 Jun 13 07:45 example-rw-r--r--. 1 mysql mysql 35141 Jun 13 07:45 LICENSE-rw-r--r--. 1 mysql mysql 9514 Jun 13 07:45 README.md-rw-r--r--. 1 mysql mysql 54 Jun 13 07:45 requirements.txtdrwxr-xr-x. 2 mysql mysql 37 Jun 13 07:45 tests
[root@localhost binlog2sql]# vi requirements.txtPyMySQL==0.9.3wheel==0.29.0mysql-replication==0.13
[root@localhost binlog2sql]# pip3 install -r requirements.txt[root@localhost binlog2sql]# pip3 show pymysqlName: PyMySQLVersion: 0.9.3Summary: Pure Python MySQL DriverHome-page: https://github.com/PyMySQL/PyMySQL/Author: yutaka.matsubaraAuthor-email: yutaka.matsubara@gmail.comLicense: "MIT"Location: /usr/local/lib/python3.6/site-packagesRequires:
[root@localhost /]# mkdir test[root@localhost /]# chown -R mysql.mysql test[root@localhost mysqldata]#vi my.cnfsecure-file-priv=/testbasedir=/application/mysqldatadir=/data/mysqlsocket=/data/mysqldata/mysql.socklog_error=/data/mysqldata/mysql8.0.errport=3306server_id=6secure-file-priv=/testautocommit=0 log_bin=/data/mysqldata/mysql-bin [root@localhost mysqldata]# systemctl start mysqld

2.进入MySQL

Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 11Server version: 8.0.20 MySQL Community Server - GPLCopyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> show master status\g;+------------------+----------+--------------+------------------+-------------------+| File  | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |+------------------+----------+--------------+------------------+-------------------+| mysql-bin.000001 | 156 |  |   |   |+------------------+----------+--------------+------------------+-------------------+mysql> create database csdn;mysql> use csdnmysql> insert into t1 values(1),(2),(3),(4),(5),(6),(7),(8);mysql> commit;mysql> update t1 set id=10 where id=1;mysql> delete from t1 where id=3;mysql> commit;
 [root@localhost binlog2sql]# python3 binlog2sql.py -h 192.168.0.112 -P3306 -uroot -p123 -d csdn -t t1 --start-file='mysql-bin.000001'USE b'csdn';create database csdn;USE b'csdn';create table t1 (id int);INSERT INTO `csdn`.`t1`(`id`) VALUES (1); #start 609 end 807 time 2020-09-25 02:21:21INSERT INTO `csdn`.`t1`(`id`) VALUES (2); #start 609 end 807 time 2020-09-25 02:21:21INSERT INTO `csdn`.`t1`(`id`) VALUES (3); #start 609 end 807 time 2020-09-25 02:21:21INSERT INTO `csdn`.`t1`(`id`) VALUES (4); #start 609 end 807 time 2020-09-25 02:21:21INSERT INTO `csdn`.`t1`(`id`) VALUES (5); #start 609 end 807 time 2020-09-25 02:21:21INSERT INTO `csdn`.`t1`(`id`) VALUES (6); #start 609 end 807 time 2020-09-25 02:21:21INSERT INTO `csdn`.`t1`(`id`) VALUES (7); #start 609 end 807 time 2020-09-25 02:21:21INSERT INTO `csdn`.`t1`(`id`) VALUES (8); #start 609 end 807 time 2020-09-25 02:21:21UPDATE `csdn`.`t1` SET `id`=10 WHERE `id`=1 LIMIT 1; #start 917 end 1095 time 2020-09-25 02:21:39DELETE FROM `csdn`.`t1` WHERE `id`=3 LIMIT 1; #start 917 end 1183 time 2020-09-25 02:21:48
[root@localhost binlog2sql]# python3 binlog2sql.py -h 192.168.0.112 -P3306 -uroot -p123 -d csdn -t t1 --start-file='mysql-bin.000001' >/test/binlog2sql.sql
[root@localhost binlog2sql]# cat /test/binlog2sql.sqlUSE b'csdn';create database csdn;USE b'csdn';create table t1 (id int);INSERT INTO `csdn`.`t1`(`id`) VALUES (1); #start 609 end 807 time 2020-09-25 02:21:21INSERT INTO `csdn`.`t1`(`id`) VALUES (2); #start 609 end 807 time 2020-09-25 02:21:21INSERT INTO `csdn`.`t1`(`id`) VALUES (3); #start 609 end 807 time 2020-09-25 02:21:21INSERT INTO `csdn`.`t1`(`id`) VALUES (4); #start 609 end 807 time 2020-09-25 02:21:21INSERT INTO `csdn`.`t1`(`id`) VALUES (5); #start 609 end 807 time 2020-09-25 02:21:21INSERT INTO `csdn`.`t1`(`id`) VALUES (6); #start 609 end 807 time 2020-09-25 02:21:21INSERT INTO `csdn`.`t1`(`id`) VALUES (7); #start 609 end 807 time 2020-09-25 02:21:21INSERT INTO `csdn`.`t1`(`id`) VALUES (8); #start 609 end 807 time 2020-09-25 02:21:21UPDATE `csdn`.`t1` SET `id`=10 WHERE `id`=1 LIMIT 1; #start 917 end 1095 time 2020-09-25 02:21:39DELETE FROM `csdn`.`t1` WHERE `id`=3 LIMIT 1; #start 917 end 1183 time 2020-09-25 02:21:48
[root@localhost binlog2sql]# python3 binlog2sql.py -h 192.168.0.112 -P3306 -uroot -p123 -d csdn -t t1 --start-file='mysql-bin.000001' --sql-type=deleteUSE b'csdn';create database csdn;USE b'csdn';create table t1 (id int);DELETE FROM `csdn`.`t1` WHERE `id`=3 LIMIT 1; #start 917 end 1183 time 2020-09-25 02:21:48
[root@localhost binlog2sql]# python3 binlog2sql.py -h 192.168.0.112 -P3306 -uroot -p123 -d csdn -t t1 --start-file='mysql-bin.000001' --sql-type=delete --start-position=917 --stop-position=1183 -B >/test/roll.sql[root@localhost binlog2sql]# cat /test/roll.sql INSERT INTO `csdn`.`t1`(`id`) VALUES (3); #start 917 end 1183 time 2020-09-25 02:21:48
mysql> source /test/roll.sqlQuery OK, 1 row affected (0.00 sec)mysql> select * from t1;+------+| id |+------+| 10 || 2 || 4 || 5 || 6 || 7 || 8 || 3 |+------+8 rows in set (0.00 sec)

更多相关文章

  1. MySQL系列多表连接查询92及99语法示例详解教程
  2. Android(安卓)- Manifest 文件 详解
  3. Android的Handler机制详解3_Looper.looper()不会卡死主线程
  4. Selector、shape详解(一)
  5. android2.2资源文件详解4--menu文件夹下的菜单定义
  6. Android发送短信方法实例详解
  7. Android(安卓)读取资源文件实例详解
  8. 详解Android中的屏幕方向
  9. Android学习笔记(10)————Android的Listview详解1(ArrayAdapte

随机推荐

  1. 水晶报表性能优化之道
  2. 【mysql】添加对emoji的支持
  3. 程序中处理一对多的数据
  4. 如何在sql server中生成并手动插入一个惟
  5. 使用 Servlet+jQuery+MySQL 实现简单的聊
  6. SQL 2005 Reporting Services:物理分页和
  7. sql查询每个学生的最高成绩mysql语句
  8. SQL server 2008 (R2) 无日志文附加数据
  9. Linux crontab定时任务的使用
  10. Linux的基本权限和特殊权限