mysql5.5.44  主从复制配置


注:mysql从5.1.7以后开始就不支持my.cnf中“master-host”类似的参数; 

必须在slave 的mysql中执行以下命令(最后的pos没有引号):

mysql> change master to master_host='192.168.137.100', master_user='tongbu', master_password='123456', master_log_file='mysql-bin.000014', master_log_pos=107;

mysql>flush privileges;

mysql>quit

/etc/init.d/mysqld restart   # 重启mysql服务

主mysql 授权 mysql> grant  replication  slave  on *.* to  'tongbu'@'%'  identified by  '123456';

主从都重启mysql后,查看slave状态:

mysql> show slave status  \G;

 Slave_IO_Running: Connecting
 Slave_SQL_Running: Yes

之后 Slave_IO_Running: No

检查 tail  /data/mysql3306/localhost.localdomain.err日志发现提示master and slave have equal MySQL server ids。

my.cnf中确定设置了server_id 分别为1 和2,什么情况呢!!

mysql>  show variables like 'server_id'; # 查看server id

单纯的修改my.cnf 和重启无法解决此问题。

最后发现是按照目录下有另外的 my.cnf存在的原因,删除之,解决。

大家一定要留心这样多余的配置文件。