mysql binlog 备份_mysql binlog备份

1、binlog备份

[mysql@mysql5 binlog]$mysqlbinlog --read-from-remote-server --raw --host=192.168.1.210 --port=65535 --user=yang --password=oracle --stop-never --result-file=/mysqldb/backup/backup_192.168.1.210/binlog/ master-bin.000001

2、解析binlog

[mysql@mysql5 binlog]$ mysqlbinlog -v -v -v master-bin.000007 > 07.txt

[mysql@mysql5 binlog]$ vi 07.txt

/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;

/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;

DELIMITER /*!*/;

# at 4

#180807 11:18:46 server id 6666601 end_log_pos 123 CRC32 0x67606c44 Start: binlog v 4, server v 5.7.23-log created 180807 11:18:46

BINLOG '

lg9pWw9puWUAdwAAAHsAAAAAAAQANS43LjIzLWxvZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

AAAAAAAAAAAAAAAAAAAAAAAAEzgNAAgAEgAEBAQEEgAAXwAEGggAAAAICAgCAAAACgoKKioAEjQA

AURsYGc=

'/*!*/;

# at 123

#180807 11:18:46 server id 6666601 end_log_pos 194 CRC32 0xcc8d05b0 Previous-GTIDs

# 27b983f4-99ed-11e8-ab5d-000c29e42a1f:1-16

# at 194

#180807 11:37:34 server id 6666601 end_log_pos 259 CRC32 0x440038b5 GTID last_committed=0 sequence_number=1 rbr_only=no

SET @@SESSION.GTID_NEXT= '27b983f4-99ed-11e8-ab5d-000c29e42a1f:17'/*!*/;

............

3、binlog恢复

[mysql@mysql5 binlog]$ mysqlbinlog --start-position=161899 --stop-position=323048 --skip-gtids /mysqldb/db_slave/binlog/slave-bin.000001|mysql -uroot -p -S/mysqldb/db_test01/mysql.sock employees

实验

1、导入employees数据库

2、创建表

mysql> create table test1 like dept_emp;

Query OK, 0 rows affected (0.85 sec)

mysql> alter table test1 drop primary key;

Query OK, 0 rows affected (0.31 sec)

Records: 0 Duplicates: 0 Warnings: 0

mysql> insert into test1 select * from dept_emp limit 10000;

Query OK, 10000 rows affected (0.16 sec)

Records: 10000 Duplicates: 0 Warnings: 0

3、mysqldump备份employees数据库

[mysql@mysql5 db_slave]$ mysqldump -uroot -p -S/mysqldb/db_slave/mysql.sock --master-data=2 --single-transaction --databases employees --set-gtid-purged=off > testdump.sql

Enter password:

4、模拟业务

mysql> insert into test1 select * from dept_emp limit 10000;

Query OK, 10000 rows affected (0.50 sec)

Records: 10000 Duplicates: 0 Warnings: 0

mysql> delete from test1 limit 1000;

Query OK, 1000 rows affected (0.30 sec)

mysql> create table test2 like dept_emp;

Query OK, 0 rows affected (0.27 sec)

5、发现问题进行回滚

MASTER_LOG_POS=161899

at 323048

[mysql@mysql5 binlog]$ mysqlbinlog -v -v -v slave-bin.000001 > 1.txt

[mysql@mysql5 binlog]$ vi 1.txt

9634792.html

[mysql@mysql5 db_slave]$ vi testdump.sql

9634792.html

mysql> source /mysqldb/db_slave/testdump.sql #空实例中#

[mysql@mysql5 binlog]$ mysqlbinlog --start-position=161899 --stop-position=323048 --skip-gtids /mysqldb/db_slave/binlog/slave-bin.000001|mysql -uroot -p -S/mysqldb/db_test01/mysql.sock employees

5、结果

9634792.html

6、导入删除数据

[mysql@mysql5 ~]$ mysqldump -uroot -p -S /mysqldb/db_test01/mysql.sock employees test1 --where="1=1 limit 1000;" --set-gtid-purged=OFF > test3.sql

Enter password:

[mysql@mysql5 ~]$ vi test3.sql

9634792.html

[mysql@mysql5 ~]$ mysql -uroot -p -S /mysqldb/db_slave/mysql.sock --database=employees --table=test1 < test3.sql

mysql: [Warning] mysql: ignoring option '--table' due to invalid value 'test1'

Enter password:

9634792.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值