MYSQL的GTID
要求MYSQL版本要在5.6之上,GTID复制不像传统的复制方式(异步复制、半同步复制)需要找到binlog文件名和POS点,只需要知道master的IP、端口、账号、密码即可。开启GTID后,执行change master_auto_postion=1即可,它会自动寻找到相应的位置开始同步。
配置范例:
主服务器配置
修改配置文件:
vim /etc/my.cnf server-id=205 log-bin gtid_mode=ON 开启GTID enforce_gtid_consistency 开启保证GTID安全的参数
log-slave-updates
重启服务
service mysqld restart
创建从服务器复制的账号
mysql> grant replication slave on *.* to relpuser@'10.0.0.%' identified by '123456';
从服务器配置
修改配置文件:
vim /etc/my.cnf server-id=216 gtid_mode=ON 开启GTID enforce_gtid_consistency 开启保证GTID安全的参数
log-bin
log-slave-updates
重启服务
service mysqld restart
设置change master to
mysql>CHANGE MASTER TO MASTER_HOST='10.0.0.205', MASTER_USER='repluser', MASTER_PASSWORD='123456', MASTER_PORT=3306, MASTER_AUTO_POSITION=1;
此时从节点应该能与主进行同步
注意:
配置GTID时如果没有加上log-slave-updates则会一直报错
[root@localhost opt]# /etc/init.d/mysqld restart Shutting down MySQL.. SUCCESS! Starting MySQL... ERROR! The server quit without updating PID file (/data/mysql/localhost.localdomain.pid).

浙公网安备 33010602011771号