mysql主从复制错误:A slave with the same server_uuid/server_id as this slave has connected to the master;
A slave with the same server_uuid/server_id as this slave has connected to the master;
有一个slave和这个slave存在相同的server_uuid/server_id,已经连接了master。即存在两个或两个以上slave的server_uuid/server_id相同
这种情况下请检查从库是否存在相同的server_id/server_uuid
show variables like '%server%id%';
1、 如果server_id相同,请修改/etc/my.cnf中server_id的配置
2、如果server_uuid相同,请删除auto.cnf文件(auto.cnf文件在/etc/my.cnf中datadir配置的目录下),然后重启数据库,数据库会重新生成server_uuid和auto.cnf文件
(默认在/var/lib/mysql目录下)
我出现这个问题是因为克隆了从库所在的虚拟机,克隆的从库和原来的从库server_id和server_uuid都相同,于是出现了上述问题
关于server_uuid和auto.cnf 相关说明
- Mysql5.6用128位的server_uuid代替了原来的32位server_id的大部分功能。在首次启动时mysql会调用generate_server_uuid()自动生成一个server_uuid,并且保存到auto.cnf文件—这个文件目前存在的唯一目的就是保存server_uuid。mysql再次启动时会读取auto.cnf文件, 继续使用上次生成的server_uuid。
- 全局唯一的 server_uuid 的一个好处是:可以解决由 server_id 配置冲突带来的 MySQL 主备复制的异常终止。在 MySQL 5.6,Slave 向 Master 申请 binlog 时,会首先发送自己的 server_uuid,Master 用 Slave 发送的 server_uuid 代替 server_id (MySQL 5.6 之前的方式)作为 kill_zombie_dump_threads 的参数,终止冲突或者僵死的 BINLOG_DUMP 线程。
参考地址
双slave的server_uuid相同问题 https://blog.csdn.net/dba_waterbin/article/details/27533869
作者:小念
本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。