在MySQL中启用GTID(全局事务标识符)模式进行主从复制涉及几个步骤。GTID为每个事务赋予一个唯一的标识符,从而简化了复制过程和故障恢复。以下是启用GTID模式的基本步骤:
确保您使用的MySQL版本支持GTID。GTID从MySQL 5.6版本开始支持。
在主服务器的my.cnf
(或my.ini
)配置文件中,添加以下配置项:
[mysqld]
gtid_mode = ON
enforce_gtid_consistency = ON
log_bin
log_slave_updates
binlog_format = ROW
server_id = 1
这里的server_id
应该是唯一的。
在从服务器的配置文件中,添加类似的配置:
[mysqld]
gtid_mode = ON
enforce_gtid_consistency = ON
log_bin
log_slave_updates
binlog_format = ROW
server_id = 2
确保每个从服务器有一个唯一的server_id
。
更改配置后,需要重启MySQL服务器以使更改生效。
登录到主服务器,然后创建一个用于复制的用户:
CREATE USER 'replica'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'replica'@'%';
在从服务器上,配置复制:
CHANGE MASTER TO
MASTER_HOST='主服务器IP',
MASTER_USER='replica',
MASTER_PASSWORD='password',
MASTER_AUTO_POSITION = 1;
这里的MASTER_AUTO_POSITION = 1
表示使用GTID模式。
START SLAVE;
在从服务器上执行以下命令,检查复制状态:
SHOW SLAVE STATUS\G
查看Slave_IO_Running
和Slave_SQL_Running
两个字段,确保它们都是Yes
。
以上步骤提供了一个基本的指南,但具体的操作可能会根据您的具体环境和需求有所不同。