首先碰到这个问题:
show slave status\G;
Slave failed to initialize relay log info structure from the repository
网上搜了半天也没能解决,后来突然想到是不是数据库读取relay log的时候读的是 来源数据库的,所以把来源库的relay log删掉了,重启,果然不报错了。
然后又报这个错:
slave服务器show slave status:
Fatal error: 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> show variables like 'server_id';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id | 2 |
+---------------+-------+
1 row in set (0.00 sec)
两边不一致,这是啥情况呢?
网上一搜
原因在于,拷贝整个data目录,把auto.cnf文件也拷贝过来了,里面记录了数据库的uuid,每个库的uuid应该是不一样的。
[auto]
server-uuid=6dcee5be-8cdb-11e2-9408-90e2ba2e2ea6
解决办法,按照这个16进制格式,随便改下,重启mysql即可。我就随便修改了一个数字
详细出处参考:http://www.jb51.net/article/39935.htm
然后主从就ok了。