当前位置: 代码迷 >> 综合 >> 【MySql】The slave I/O thread stops because master and slave have equal MySQL server UUIDs;
  详细解决方案

【MySql】The slave I/O thread stops because master and slave have equal MySQL server UUIDs;

热度:84   发布时间:2023-12-18 06:06:32.0

改:auto.cnf文件


故障案例:主从同步报错Fatal error: The slave I/O thread stops becausemaster and slave have equal MySQL server

场景一:因为数据量非常,大概有1.4T,需要在原先master1-slave1的情况下再创建一个库slave2,并且挂在slave1下,即master1-slave1-slave2的结构。为了方便,当时停掉从库salve1show masterstatus记录状态,开启log_slave_updates,并且关闭salve1,然后将这个从库的data文件夹直接copy到新的从库,结果在创建slave2slave1的主从关系时报错

Fatalerror: The slave I/O thread stops because master and slave have equal MySQLserver UUIDs; these UUIDs must be different for replication to work.

原因分析:

mysql 5.6的复制引入了uuid的概念,各个复制结构中的server_uuid得保证不一样,但是查看到直接copy  data文件夹后server_uuid是相同的,show variables like '%server_uuid%';

解决方法:

找到data文件夹下的auto.cnf文件,修改里面的uuid值,保证各个dbuuid不一样,重启db即可

 

 

场景二:创建主从关系时copy了同样的my.cnf文件,报错

Fatalerror: The slave I/O thread stops because master and slave have equal MySQLserver ids; 

原因分析:

server_uuid类似,servier_id也得保证不一样

解决方法:

找到my.cnf配置文件中的server_id,修改从库的server_id保证和复制结构中的其他db不一样,重启db即可

  相关解决方案