海外VPS MySQL主从复制配置与故障排查
文章分类:技术文档 /
创建时间:2025-09-27
在海外VPS(Virtual Private Server,虚拟专用服务器)上搭建MySQL主从复制架构,是提升数据库读写性能、增强容灾能力的常用方案。无论是跨境电商的数据备份,还是企业应用的高可用部署,掌握这一技术都能让你的海外VPS发挥更大价值。本文从配置到故障排查,带你一步步理清操作逻辑。

一、配置前的必要准备
在正式操作前,需要确认两件事:一是主从两台海外VPS均已安装MySQL(建议版本5.7及以上),二是两台服务器网络连通。可通过`ping 从服务器IP`测试网络,若提示“请求超时”,需检查防火墙是否开放了MySQL默认端口3306。此外,要提前记录主服务器IP、MySQL root密码,以及后续会用到的复制用户信息。
二、主服务器核心配置
1. 修改MySQL配置文件
登录主服务器,用`vim /etc/mysql/mysql.conf.d/mysqld.cnf`打开配置文件(不同系统路径可能略有差异)。重点调整两个参数:
- `server-id`:设置为唯一整数(如1),这是MySQL识别节点的“身份证号”,主从必须不同;
- `log-bin`:取消注释并指定二进制日志(Binary Log,记录数据修改操作的文件,主从复制的核心依据)名称,例如`log-bin = mysql-bin`。
修改完成后执行`systemctl restart mysql`重启服务,让配置生效。
2. 创建复制专用用户
登录MySQL(命令:`mysql -u root -p`),创建一个仅用于主从复制的用户,并授予权限:
CREATE USER 'repl_user'@'%' IDENTIFIED BY 'StrongPassword123'; -- 创建用户,%表示允许所有IP连接
GRANT REPLICATION SLAVE ON *.* TO 'repl_user'@'%'; -- 授予复制权限
FLUSH PRIVILEGES; -- 刷新权限生效
最后执行`SHOW MASTER STATUS;`,记录输出中的`File`(如mysql-bin.000001)和`Position`(如154),这两个值是从服务器同步的起点。
三、从服务器同步配置
1. 基础参数设置
同样修改从服务器的`mysqld.cnf`,将`server-id`设为另一个唯一值(如2),无需开启`log-bin`(除非需要级联复制)。保存后重启MySQL服务。
2. 关联主服务器信息
登录从服务器MySQL,执行以下命令绑定主服务器:
CHANGE MASTER TO
MASTER_HOST='主服务器IP', -- 替换为主服务器实际IP
MASTER_USER='repl_user', -- 前面创建的复制用户
MASTER_PASSWORD='StrongPassword123', -- 用户密码
MASTER_LOG_FILE='mysql-bin.000001', -- 主服务器记录的File值
MASTER_LOG_POS=154; -- 主服务器记录的Position值
完成后输入`START SLAVE;`启动复制进程,再用`SHOW SLAVE STATUS\G;`检查状态。若看到`Slave_IO_Running: Yes`和`Slave_SQL_Running: Yes`,说明配置成功——IO线程负责从主服务器拉取日志,SQL线程负责执行日志。
四、常见故障与解决
故障1:Slave_IO_Running显示No
- 可能原因:网络不通、复制用户权限不足、二进制日志信息错误。
- 排查步骤:先用`telnet 主服务器IP 3306`测试端口连通性;检查主服务器是否执行过`FLUSH PRIVILEGES`(权限未刷新会导致用户无法连接);若日志文件或位置错误,需重新在主服务器执行`SHOW MASTER STATUS`获取最新值,再到从服务器执行`STOP SLAVE;`后修改`CHANGE MASTER TO`参数。
故障2:Slave_SQL_Running显示No
- 可能原因:从服务器数据与主服务器不一致(如手动修改过从库数据)、SQL语句执行错误(如主库删除了从库不存在的表)。
- 解决方法:若数据差异不大,可停止复制(`STOP SLAVE;`)后使用`RESET SLAVE;`清空复制信息,重新配置`CHANGE MASTER TO`;若差异较大,建议从主服务器导出数据(`mysqldump`)导入从服务器,再重新启动复制。
通过这套流程,你可以在海外VPS上快速搭建稳定的MySQL主从复制架构。日常维护时,建议定期检查`SHOW SLAVE STATUS`状态,备份二进制日志,并关注海外VPS的网络稳定性——毕竟稳定的网络是主从同步的基础保障。