Linux MySQL主从配置指南

MySQL主从复制是一种常用的数据备份和灾难恢复策略,它允许一个MySQL服务器(主服务器)上的数据被复制到另一个MySQL服务器(从服务器)上,本文将详细介绍如何在Linux环境下配置MySQL的主从复制。
准备工作
- 确保主从服务器上的MySQL版本兼容。
- 在主从服务器上安装MySQL服务。
- 主从服务器应保持时间同步。
配置主服务器
- 修改主服务器上的MySQL配置文件(通常是
/etc/my.cnf或/etc/my.cnf.d/mysql.cnf):
[mysqld] server-id=1 # 主服务器ID,确保主从服务器ID不同 log-bin=mysql-bin # 开启二进制日志 binlog-format=ROW # 二进制日志格式,ROW或STATEMENT
重启MySQL服务以使配置生效。
创建用于复制的用户:
CREATE USER 'replication_user'@'%' IDENTIFIED BY 'password'; GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%'; FLUSH PRIVILEGES;
配置从服务器
- 修改从服务器上的MySQL配置文件(通常是
/etc/my.cnf或/etc/my.cnf.d/mysql.cnf):
[mysqld] server-id=2 # 从服务器ID,确保与主服务器ID不同 log-bin=mysql-bin # 开启二进制日志 binlog-format=ROW # 二进制日志格式,ROW或STATEMENT
重启MySQL服务以使配置生效。

在从服务器上执行以下命令,获取主服务器的主机名、端口、二进制日志文件名和位置:
mysql -h 主服务器IP -u replication_user -p
SHOW SLAVE STATUSG
在从服务器上执行以下命令,设置主服务器信息:
CHANGE MASTER TO MASTER_HOST='主服务器IP', MASTER_USER='replication_user', MASTER_PASSWORD='password', MASTER_LOG_FILE='binlog文件名', MASTER_LOG_POS=binlog位置;
启动从服务器上的复制进程:
START SLAVE;
验证配置
在主服务器上执行以下命令,查看复制状态:
SHOW SLAVE STATUSG
在从服务器上执行以下命令,查看复制状态:
SHOW SLAVE STATUSG
FAQs

Q1:为什么我的主从复制没有成功?
A1:请检查以下问题:
- 主从服务器是否在同一网络环境中?
- 主从服务器的时间是否同步?
- 主从服务器上的MySQL版本是否兼容?
- 主从服务器上的用户权限是否正确?
Q2:如何停止主从复制?
A2:在从服务器上执行以下命令停止复制进程:
STOP SLAVE;
在主服务器上,无需执行任何操作,因为主服务器不参与复制进程的停止。
图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/94991.html




