指导用户在Linux环境下完成MySQL 5.7数据库的主从复制配置。
一、 环境准备
- 两台安装CentOS 7的服务器,分别作为主服务器和从服务器。
- 确保两台服务器之间网络互通。
- 在两台服务器上分别安装MySQL 5.7数据库软件。
二、 主服务器配置
-
修改MySQL配置文件
/etc/my.cnf
,添加以下内容:sql
[mysqld]
server-id = 1 # 设置主服务器ID,建议使用唯一数字标识
log-bin = mysql-bin # 开启二进制日志
binlog-do-db = your_database_name # 指定需要同步的数据库
-
重启MySQL服务,使配置生效:
bash
systemctl restart mysqld
-
创建用于同步的数据库用户并授权:
sql
CREATE USER 'replication_user'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%';
FLUSH PRIVILEGES;
-
记录主服务器的二进制日志文件名称和位置:
sql
SHOW MASTER STATUS;
三、 从服务器配置
-
修改MySQL配置文件
/etc/my.cnf
,添加以下内容:sql
[mysqld]
server-id = 2 # 设置从服务器ID,必须与主服务器ID不同
log-bin = mysql-bin # 开启二进制日志
relay-log = mysql-relay-bin # 开启中继日志
-
重启MySQL服务,使配置生效:
bash
systemctl restart mysqld
-
配置主从复制关系:
sql
CHANGE MASTER TO
MASTER_HOST='master_server_ip',
MASTER_USER='replication_user',
MASTER_PASSWORD='password',
MASTER_LOG_FILE='mysql-bin.000001', # 主服务器二进制日志文件名
MASTER_LOG_POS=123; # 主服务器二进制日志位置
-
启动从服务器的同步线程:
sql
START SLAVE;
四、 验证主从复制
- 在主服务器上创建数据表并插入数据。
- 在从服务器上查询对应数据表,确认数据已同步。
注意事项
- 确保主从服务器时间同步。
your_database_name
应替换为实际需要同步的数据库名。master_server_ip
,password
,mysql-bin.000001
和123
需要根据实际情况修改。
总结
在Linux环境下配置MySQL 5.7主从复制的基本步骤。通过主从复制,可以提高数据库的可用性和数据安全性。