mysqldump 不锁表备份数据
mysqldump -uroot -proot1 --single-transaction --master-data=2 -R vfan | gzip > dump4.sql主要起作用参数:--single-transaction
查看当前mysqldump导出数据的GTID号
[root@TestCentos7 data]# grep GLOBAL.GTID_PURGED dump4.sql SET @@GLOBAL.GTID_PURGED=/*!80000 '+'*/ 'c9fba9e2-db3b-11eb-81d4-000c298d8da1:1-228';从数据库导入数据
mysql> source /data/dump4.sql由于我们mysqldump的数据已经包含了在MASTER执行的 1-228 个事务,所以我们在SLAVE进行同步的时候,要忽略这些事务不再进行同步
要想跳过某些GTID,SLAVE必须保证 gtid_purged 参数为空才能正确跳过,查看当前的gtid_purged
# 查看gtid_purged mysql> show global variables like '%gtid%';操作gtid_purged为空 ```
在从库上重设master信息
mysql> reset master;
再次查看gtid_purged
mysql> show global variables like ‘%gtid%’;
7. gtid_purged为空后,开始重置SLAVE
mysql> stop slave;
mysql> reset slave all;
8. 重置后,设置跳过的GTID,并重新同步MASTER
设置跳过的gtid_purged
mysql> SET @@GLOBAL.GTID_PURGED=’c9fba9e2-db3b-11eb-81d4-000c298d8da1:1-228’;
重新开始同步
mysql> CHANGE MASTER TO MASTER_HOST=’192.168.152.253’,MASTER_USER=’copy’,MASTER_PASSWORD=’copy’,MASTER_PORT=3306,MASTER_AUTO_POSITION=1;
9. 开启SLAVE进程,查看SLAVE状态
开启slave
mysql> start slave;
查看状态
mysql> show slave status\G; ``` https://www.cnblogs.com/v-fan/p/14063030.html
