MySQL GTID主從同步故障修復
一、簡單故障
故障1:

解決方法:
- 在終端執行
mysql>slave stop;
mysql>SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1 #跳過一個事務
mysql>slave start;
- 以上方法報錯的的話使用此方法
在[mysqld]字段下添加,如果錯誤多可以以逗號分隔繼續添加,也可以使用slave-skip-errors=all來跳過所有錯誤
vim /usr/local/mysql/etc/my.cnf
slave-skip-errors=1032
/etc/init.d/mysqld restart
二、同步故障
故障2:

解決方法:
主庫查看gtid_purged並且記錄
mysql> show global variables like '%gtid%'\G
Variable_name: gtid_purged
Value: 0003be53-e103-11e7-9374-7cd30ab49ab8:1-209325833,
0a3aea84-f824-11e6-a4f1-ecf4bbd14b7c:1-226325123,
1494a77a-93ba-11e7-9b7e-6c92bf3160a3:1-113493689,
cdcb29ce-f7ad-11e5-9c99-f84abfe485f4:1-4244249,
db4186a3-f7ad-11e5-9c99-ac853daf2ee1:1-4,
fde4cefa-93b9-11e7-9b7d-6c92bf2c1761:1-131616080
在從庫執行
#清除從庫的主從信息
mysql> stop slave;
mysql> reset slave;
mysql> reset master;
#設置gtid_purged
mysql> set @@global.gtid_purged='0003be53-e103-11e7-9374-7cd30ab49ab8:1-209325833,
0a3aea84-f824-11e6-a4f1-ecf4bbd14b7c:1-226325123
,1494a77a-93ba-11e7-9b7e-6c92bf3160a3:1-113493689,
cdcb29ce-f7ad-11e5-9c99-f84abfe485f4:1-4244249,
db4186a3-f7ad-11e5-9c99-ac853daf2ee1:1-4,
fde4cefa-93b9-11e7-9b7d-6c92bf2c1761:1-131616080';
#重新設置主從同步
mysql> change master to master_host='ip地址',
master_port=3306,
master_user='usernamet',
master_password='password',
master_auto_position=1;
#啟動從
mysql> start slave;
如果主從同步配置完成后遇到類似於錯誤1的錯誤,可以使用錯誤1的解決方法來解決。
