在Linux环境下配置MySQL主从复制是一种常见的数据库部署策略,它能够实现数据的实时备份和故障转移,以下是一篇关于如何在Linux系统上配置MySQL主从复制环境的详细指南。

准备工作
在开始配置之前,请确保以下条件已经满足:
- 两台Linux服务器,一台作为主服务器(Master),另一台作为从服务器(Slave)。
- MySQL数据库服务在两台服务器上已安装并运行。
- 主从服务器之间可以互相通信。
配置主服务器(Master)
修改MySQL配置文件
打开主服务器的MySQL配置文件
/etc/my.cnf或/etc/my.cnf.d/mysql.cnf,添加以下配置:[mysqld] server-id = 1 log-bin = /var/log/mysql/mysql-bin binlog-format = ROW
server-id是主服务器的唯一标识,log-bin指定了二进制日志文件的存储路径,binlog-format指定了二进制日志的格式。重启MySQL服务
sudo systemctl restart mysqld
创建复制用户
CREATE USER 'replication_user'@'%' IDENTIFIED BY 'replication_password'; GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%'; FLUSH PRIVILEGES;
替换
replication_user和replication_password为实际的用户名和密码。
配置从服务器(Slave)
修改MySQL配置文件

打开从服务器的MySQL配置文件
/etc/my.cnf或/etc/my.cnf.d/mysql.cnf,添加以下配置:[mysqld] server-id = 2 log-bin = /var/log/mysql/mysql-bin binlog-format = ROW
server-id是从服务器的唯一标识,与主服务器不同。重启MySQL服务
sudo systemctl restart mysqld
同步主从服务器数据
连接到从服务器,执行以下命令:
STOP SLAVE; CHANGE MASTER TO MASTER_HOST='主服务器IP地址', MASTER_USER='replication_user', MASTER_PASSWORD='replication_password', MASTER_LOG_FILE='主服务器二进制日志文件名', MASTER_LOG_POS=主服务器二进制日志文件位置; START SLAVE;
替换
主服务器IP地址、replication_user、replication_password、主服务器二进制日志文件名和主服务器二进制日志文件位置为实际的值。
验证主从复制
检查主服务器状态
SHOW SLAVE STATUS G
在
Slave_IO_Running和Slave_SQL_Running字段都显示Yes时,表示主从复制正常。
检查从服务器状态
SHOW SLAVE STATUS G
在
Replication Delay字段显示0时,表示从服务器与主服务器数据同步。
FAQs
Q1:如何查看MySQL的二进制日志文件?
A1: 使用以下命令可以查看MySQL的二进制日志文件:
mysqlbinlog /var/log/mysql/mysql-bin.000001
Q2:如何停止MySQL的主从复制?
A2: 在从服务器上执行以下命令可以停止主从复制:
STOP SLAVE;
这样,我们就完成了在Linux环境下MySQL主从配置的详细步骤,通过主从复制,我们可以确保数据的安全性和高可用性。
图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/108150.html




