技术文摘
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主从复制代码及步骤的实践,能够轻松搭建高效、可靠的主从复制环境,为数据库系统的稳定运行和性能提升提供有力保障。无论是小型项目还是大型企业级应用,这一技术都具有重要的应用价值。
- Go解析JSON遇“base64Codec: invalid input”错误的解决方法
- Go GRPC服务Socket closed错误排查与解决方法
- PHP实现文章编辑页面跳转回管理文章页面的方法
- PHP 正则表达式:从字符串删除方括号及其内容的方法
- 免费开源CMS与SaaS平台盛行下,重新开发CMS系统有无市场
- Python数据输出不整齐的解决方法,Jupyter Notebook有妙招
- Python 如何判断输入内容的字母数量并排除汉字
- 主函数结束后协程仍继续运行的原因
- HTTP服务器处理程序中协程在主函数结束后仍能继续运行的原因
- 微信开发插入MySQL文本字段乱码的解决方法
- Golang HTTP服务器处理程序中协程在主函数结束后仍持续运行的原因
- PHP gRPC调用Go服务遇Socket closed问题的排查方法
- 突破 GUI 与 CLI 局限,自动执行 MongoDB Atlas 触发器日志下载
- PHP中含二维数组的数组如何转换为JSON字符串
- Gorm Raw查询报错unsupported destination的解决方法