首先启用主库二进制日志并设置唯一server-id,接着配置复制数据库范围,推荐启用GTID以简化管理,从库启用中继日志,最后确保参数一致并启动复制。

MySQL复制是实现数据高可用、读写分离和备份恢复的重要手段。要成功配置MySQL主从复制,必须正确设置与复制相关的参数。以下是具体的配置方法和关键参数说明。
1. 启用二进制日志(binary log)
主库必须开启二进制日志,因为它是记录所有更改数据操作的日志,从库通过读取这些日志来同步数据。
建议在主库的my.cnf或my.ini配置文件中添加:- log-bin = /var/log/mysql/mysql-bin.log:启用二进制日志并指定路径
- server-id = 1:设置唯一的服务器ID,主库设为1
- binlog-format = ROW:推荐使用ROW格式,更安全且支持GTID
修改后重启MySQL服务,并确认日志已生成。
2. 配置唯一的server-id
每个参与复制的MySQL实例必须有唯一的server-id,否则复制无法启动。
- 主库设置:server-id = 1
- 从库设置:server-id = 2(或其他唯一值)
该参数在[mysqld]段落中配置,必须确保在同一复制集群中不重复。
3. 设置需要复制的数据库或忽略的数据库
可选择性地指定哪些数据库参与复制,提升效率或隔离数据。
- binlog-do-db = db1:只记录db1的二进制日志(主库)
- replicate-do-db = db1:从库只应用db1的更新
- replicate-ignore-db = mysql:忽略系统库的同步
注意:使用这些参数时建议保持主从结构一致,避免跨库操作导致数据不一致。
免费 盛世企业网站管理系统(SnSee)系统完全免费使用,无任何功能模块使用限制,在使用过程中如遇到相关问题可以去官方论坛参与讨论。开源 系统Web代码完全开源,在您使用过程中可以根据自已实际情况加以调整或修改,完全可以满足您的需求。强大且灵活 独创的多语言功能,可以直接在后台自由设定语言版本,其语言版本不限数量,可根据自已需要进行任意设置;系统各模块可在后台自由设置及开启;强大且适用的后台管理支
4. 启用GTID(全局事务标识符)可选但推荐
GTID简化了复制管理,尤其在故障切换和主从切换时更可靠。
在主从库的配置文件中添加:- gtid-mode = ON
- enforce-gtid-consistency = ON
- log-slave-updates = ON(用于级联复制)
启用GTID后,CHANGE MASTER TO命令需使用MASTER_AUTO_POSITION=1。
5. 从库启用中继日志(relay log)
从库会自动启用中继日志来缓存主库传来的二进制事件。
- relay-log = /var/log/mysql/relay-bin:可自定义路径
- skip-slave-start:防止从库意外启动复制线程
通常默认已启用,可根据需要调整路径或性能参数。
基本上就这些核心配置。完成参数设置后,重启主从MySQL服务,创建复制专用用户,使用CHANGE MASTER TO连接主从,并启动START SLAVE即可开始复制。关键是保证参数一致性与唯一性,避免配置冲突。








