主从复制通过主库记录binlog、从库重放实现数据同步。步骤:1. 主库配置server-id、开启binlog并创建复制用户;2. 从库设置唯一server-id、启用中继日志并设为只读;3. 从库执行CHANGE MASTER指向主库,启动复制;4. 验证数据一致性。需确保网络通、权限对、配置准。

MySQL主从复制是一种常见的数据库架构,用于实现数据的高可用、读写分离和备份。配置主从复制的基本思路是:主库(Master)记录数据变更并生成二进制日志(binlog),从库(Slave)读取主库的binlog并重放,从而保持数据一致。以下是详细的安装与配置步骤。
1. 环境准备
确保主从服务器已安装MySQL,并能正常运行。假设:
主库IP:192.168.1.100从库IP:192.168.1.101MySQL版本:5.7 或 8.0(操作类似)
确认两台服务器之间网络互通,防火墙开放3306端口,且MySQL允许远程连接。
2. 配置主库(Master)
编辑主库的MySQL配置文件 my.cnf(通常位于 /etc/my.cnf 或 /etc/mysql/my.cnf):
[mysqld]
server-id = 1
log-bin = mysql-bin
binlog-format = ROW
expire_logs_days = 7
max_binlog_size = 100M
说明:
server-id:唯一标识主库,不能与从库重复log-bin:启用二进制日志并指定文件名前缀binlog-format:推荐使用ROW格式,更安全
保存后重启MySQL服务:
systemctl restart mysqld
登录MySQL,创建用于复制的账号:
CREATE USER ‘repl’@’192.168.1.101’ IDENTIFIED BY ‘your_password’;
GRANT REPLICATION SLAVE ON *.* TO ‘repl’@’192.168.1.101’;
FLUSH PRIVILEGES;
查看主库状态,获取当前binlog位置:
SHOW MASTER STATUS;
记下 File 和 Position 的值,后续从库配置需要使用。
3. 配置从库(Slave)
编辑从库的 my.cnf 文件:
[mysqld]
server-id = 2
relay-log = mysql-relay-bin
log-slave-updates = 1
read-only = 1
说明:
server-id:必须唯一,不能与主库相同relay-log:指定中继日志名称read-only:防止从库被误写
重启从库MySQL服务:
Replit Ghostwrite
一种基于 ML 的工具,可提供代码完成、生成、转换和编辑器内搜索功能。
93 查看详情
systemctl restart mysqld
登录MySQL,执行CHANGE MASTER命令:
CHANGE MASTER TO
MASTER_HOST=’192.168.1.100′,
MASTER_USER=’repl’,
MASTER_PASSWORD=’your_password’,
MASTER_LOG_FILE=’mysql-bin.000001′,
MASTER_LOG_POS=154;
注意:MASTER_LOG_FILE 和 MASTER_LOG_POS 使用主库 SHOW MASTER STATUS 输出的实际值。
启动复制:
START SLAVE;
查看复制状态:
SHOW SLAVE STATUS\G
重点关注以下两个字段:
Slave_IO_Running: YesSlave_SQL_Running: Yes
若均为Yes,表示复制正常运行。如果有错误,检查错误信息并排查网络、权限或配置问题。
4. 验证主从复制
在主库执行:
CREATE DATABASE IF NOT EXISTS test_replication;
USE test_replication;
CREATE TABLE t1 (id INT);
INSERT INTO t1 VALUES (1);
登录从库,执行:
SHOW DATABASES LIKE ‘test_replication’;
SELECT * FROM test_replication.t1;
如果能看到数据库和数据,说明复制成功。
基本上就这些。配置主从复制不复杂,但要注意 server-id 唯一性、网络连通性、用户权限和日志位置的准确性。一旦配置完成,建议定期监控复制延迟和状态,确保系统稳定。
以上就是如何在mysql中配置主从复制_mysql主从复制安装配置的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1072453.html
微信扫一扫
支付宝扫一扫