查看MySQL主从复制状态时提示The slave IO thread stops的解决方法
问题现象描述
登录从库,查看从库状态,提示“The slave I/O thread stops because master and slave have equal MySQL server UUIDs; these UUIDs must be different for replication to work.”
关键过程、根本原因分析
在MySQL的主从复制架构中,每个实例都有一个唯一的UUID,这个UUID保存在datadir目录下的auto.cnf文件中。如果在复制架构中,主从实例使用了相同的UUID,就会导致复制失败。因此,需要保证每个MySQL实例的UUID唯一。
结论、解决方案及效果
为了解决上述问题,需要先停止备库实例,再删除备库实例的data目录下的auto.cnf文件(该文件保存了实例的UUID信息),最后启动备库实例,此时备库会重新生成一个新的auto.cnf文件,并生成一个新的UUID。
- 先关闭从库,再关闭主库。
- 主库和从库分别执行如下命令删除auto.cnf。
cd /data/mysql/data rm -rf auto.cnf
- 先启动主库,再启动从库。
- 登录从库,并执行如下命令启动从服务器的复制进程。
start slave;
- 重新查看MySQL主从复制状态。
SHOW SLAVE STATUS;
父主题: 故障排除