一次Mysql主从复制出现1236错误解决全过程
自己搭建了一套mysql5.7.26的主从复制环境,有2个多月没怎么管它,今天上去想要做一个因为主键冲突,导致失败的测试,发现mysql主从复制已经断开了,上去一看报了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.',看这个报错信息,是由于复制需要的binary logs被删除了,所以导致主从复制失败,去主库上查看,日志已经没有了,这也就无法正常启动复制进程了。
到这里,有2个解决方案第一:重新搭建主从复制,在主库上做个全备,在从上库上恢复,然后配置主从复制第二:由于是测试环境,数据的一致性不太重要,不用主从的复制的数据保持一致了,可以清除已经删除的binary logs日志的gtid信息,重启主从复制。
方法如下所示:1.在主库上获取gtid_purged信息
2.登录从库,停止slave服务,重置slave
至此,主从复制已经恢复正常,当然在生产上不建议使用此方法,因为此方法,会导致主从数据不一致,在开发,测试环境是可以用的。
下一篇:一款好用、免费的数据恢复软件+磁盘管理工具