技术文摘
MySQL主从复制实战:基于GTID的复制代码分享
2025-01-15 04:28:41 小编
MySQL主从复制实战:基于GTID的复制代码分享
在数据库管理中,MySQL主从复制是一项关键技术,它能有效提升系统的可用性、数据冗余性以及读写性能。基于GTID(全局事务标识符)的复制更是为这一过程带来了更高的便利性和可靠性。下面就为大家分享基于GTID的MySQL主从复制实战代码及步骤。
确保主从服务器的MySQL版本支持GTID。开启主服务器的GTID功能,需要修改MySQL配置文件(通常是my.cnf或my.ini)。在主服务器配置文件中添加或修改以下参数:
server-id=1
gtid_mode=ON
enforce_gtid_consistency=ON
保存并重启MySQL服务,以使配置生效。
接着,在主服务器上创建用于复制的用户,并授予相应权限。登录MySQL后,执行以下SQL语句:
CREATE USER'replication_user'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO'replication_user'@'%';
FLUSH PRIVILEGES;
之后,获取主服务器的状态信息,执行:
SHOW MASTER STATUS;
记录下File和Position的值,后续从服务器配置时会用到。
然后,配置从服务器。同样修改从服务器的MySQL配置文件,添加或修改参数:
server-id=2
gtid_mode=ON
enforce_gtid_consistency=ON
重启MySQL服务后,登录从服务器的MySQL,执行配置主服务器的命令:
CHANGE MASTER TO
MASTER_HOST='主服务器IP',
MASTER_USER='replication_user',
MASTER_PASSWORD='password',
MASTER_AUTO_POSITION=1;
这里的MASTER_AUTO_POSITION=1表示使用GTID自动定位复制位置。
最后,启动从服务器的复制功能:
START SLAVE;
并通过以下命令检查从服务器状态:
SHOW SLAVE STATUS \G;
重点查看Seconds_Behind_Master的值,如果为0,且Slave_IO_Running和Slave_SQL_Running都为Yes,表示主从复制配置成功。
通过以上基于GTID的MySQL主从复制代码及步骤的实践,能够轻松搭建高效、可靠的主从复制环境,为数据库系统的稳定运行和性能提升提供有力保障。无论是小型项目还是大型企业级应用,这一技术都具有重要的应用价值。