解决mysql开启GTID主从同步出现1236错误问题 推荐
2016-12-16 12:03
1106 查看
最近遇到mysql开启gtid做复制时,从库出现1236错误,导致同步无法进行,本文就这问题记录下处理步骤,有关gtid知识在这里不做介绍,mysql版本为5.7.16。
一、错误原因分析错误信息如下:Last_IO_Errno: 1236 Last_IO_Error: Got fatal error
1236 from master when reading data from binary log: 'The slave is connecting
using CHANGE MASTER TO MASTER_AUTO_POSITION = 1, but the master has purged
binary logs containing GTIDs that the slave requires.'
一般两种情况会出现以上现象1.在主库上手动执行清除二进制日志文件2.主库重启,重新同步时二、解决方法:1.在主库上执行以下命令,查询gtid_purged,记录下改值mysql> show
global variables like '%gtid%'\G
2.在从库上执行以下命令,查询已经执行过的gtid即gtid_executed,记录下主库的值,本机的不需要
3.在从库上执行以下命令停止同步线程及重置同步相关信息mysql> stop slave;mysql> reset slave;mysql> reset master;4.在从库上设置gtid_purged该值有两个来源,一是在主库上查询的gtid_purged,二是在从库上查询的已经执行过的gtid_executed值(本机的就不需要,主库上gtid)注意:一定记得加上从库上已经执行过的gtid,若只设置了主库上的gtid_purged,此时从库会重新拉取主库上所有的二进制日志文件,同步过程会出现其他错误,导致同步无法进行mysql> set
@@global.gtid_purged='4fa9ab33-3077-11e6-8ee6-fcaa14d0751b:1-18240458,6e41a42e-8529-11e6-b72e-fcaa14d07546:1-56604052:56604054-56605629:56605631-56871196,9850e381-b601-11e6-8e46-fcaa14d07546:1-3126210,c5cdcae2-9cb0-11e6-909c-fcaa14d0751b:1-1189,10a59961-c02d-11e6-a2de-fcaa14d07546:1-13381418';注意:设置gtid_purged值时,gtid_executed值必须为空否则报错,该值清空的方法就是reset
master命令执行完,再次查看相关信息
5.重新开启同步mysql> change master to
master_host='192.168.1.15',master_port=3306,master_user='repl',master_password='xxx',master_auto_position=1;mysql> start slave;当从库追赶上主库,此时测试主从数据是否一致,测试结果一切正常mk-table-checksum
h=192.168.1.15,u=root,p=xxx,P=3306
h=192.168.1.19,u=root,p=xxxx,P=3307
-d 6coursestudychoose_test | mk-checksum-filter
一、错误原因分析错误信息如下:Last_IO_Errno: 1236 Last_IO_Error: Got fatal error
1236 from master when reading data from binary log: 'The slave is connecting
using CHANGE MASTER TO MASTER_AUTO_POSITION = 1, but the master has purged
binary logs containing GTIDs that the slave requires.'
一般两种情况会出现以上现象1.在主库上手动执行清除二进制日志文件2.主库重启,重新同步时二、解决方法:1.在主库上执行以下命令,查询gtid_purged,记录下改值mysql> show
global variables like '%gtid%'\G
2.在从库上执行以下命令,查询已经执行过的gtid即gtid_executed,记录下主库的值,本机的不需要
3.在从库上执行以下命令停止同步线程及重置同步相关信息mysql> stop slave;mysql> reset slave;mysql> reset master;4.在从库上设置gtid_purged该值有两个来源,一是在主库上查询的gtid_purged,二是在从库上查询的已经执行过的gtid_executed值(本机的就不需要,主库上gtid)注意:一定记得加上从库上已经执行过的gtid,若只设置了主库上的gtid_purged,此时从库会重新拉取主库上所有的二进制日志文件,同步过程会出现其他错误,导致同步无法进行mysql> set
@@global.gtid_purged='4fa9ab33-3077-11e6-8ee6-fcaa14d0751b:1-18240458,6e41a42e-8529-11e6-b72e-fcaa14d07546:1-56604052:56604054-56605629:56605631-56871196,9850e381-b601-11e6-8e46-fcaa14d07546:1-3126210,c5cdcae2-9cb0-11e6-909c-fcaa14d0751b:1-1189,10a59961-c02d-11e6-a2de-fcaa14d07546:1-13381418';注意:设置gtid_purged值时,gtid_executed值必须为空否则报错,该值清空的方法就是reset
master命令执行完,再次查看相关信息
5.重新开启同步mysql> change master to
master_host='192.168.1.15',master_port=3306,master_user='repl',master_password='xxx',master_auto_position=1;mysql> start slave;当从库追赶上主库,此时测试主从数据是否一致,测试结果一切正常mk-table-checksum
h=192.168.1.15,u=root,p=xxx,P=3306
h=192.168.1.19,u=root,p=xxxx,P=3307
-d 6coursestudychoose_test | mk-checksum-filter
相关文章推荐
- 解决mysql开启GTID主从同步出现1236错误问题
- 解决mysql开启GTID主从同步出现1236错误问题
- mysql 使用GTID主从复制后出现错误代码1785解决方法
- MySQL5.1主从同步出现Relay log read failure错误解决方法
- MySQL主从同步配置容易出现的问题以及解决方法
- mysql 数据同步 出现Slave_IO_Running:No问题的解决方法小结
- mysql 出现1067错误无法启动的问题解决思路
- MYSQL主机Master磁盘写满,导致主从数据无法同步各种问题解决
- MySQL主从失败 错误Got fatal error 1236解决方法
- MySQL主从失败 错误Got fatal error 1236解决方法
- MySQL主从失败, 错误Got fatal error 1236解决方法
- mysql主从同步复制错误解决一例
- mysql主从库不同步问题解决方法
- 一台机器搭建MySQL双实例并创建主从关系出现1045错误解决办法一则
- MySQL主从失败 错误Got fatal error 1236解决方法
- MySQL主从复制问题解决一例 推荐
- Mysql常见的几个错误问题及解决方法: 推荐
- 解决MySQL远程登录时出现ERROR 1130错误问题
- 解决Mysql主从不同步问题
- mysql4.1以上版本连接时出现Client does not support authentication protocol #1251错误问题解决办法