售前咨询400-838-0503

Linux云服务器如何配置数据库主从复制?

技术文档 2025-04-17 06:00

Linux云服务器配置MySQL主从复制完整指南

在当今数据驱动的时代,数据库高可用性已成为企业IT架构的核心需求。本文将详细介绍在Linux云服务器环境下配置MySQL主从复制的完整流程,帮助您构建稳定可靠的数据备份方案。

一、准备工作

在开始配置前,请确保您已准备:

  • 两台Linux云服务器(推荐CentOS 7+/Ubuntu 18.04+)
  • MySQL 5.7或更高版本已安装
  • 服务器间网络互通(建议配置内网连接)
  • root或具有sudo权限的用户

二、主服务器配置

1. 修改MySQL配置文件

sudo vim /etc/mysql/my.cnf
# 在[mysqld]段添加以下配置:
server-id = 1
log_bin = /var/log/mysql/mysql-bin.log
binlog_do_db = 需要复制的数据库名
binlog_format = ROW

2. 创建复制专用账户

mysql> CREATE USER 'replica'@'从服务器IP' IDENTIFIED BY '强密码';
mysql> GRANT REPLICATION SLAVE ON *.* TO 'replica'@'从服务器IP';
mysql> FLUSH PRIVILEGES;

三、从服务器配置

1. 修改MySQL配置

sudo vim /etc/mysql/my.cnf
# 在[mysqld]段添加:
server-id = 2
relay-log = /var/log/mysql/mysql-relay-bin
log_bin = /var/log/mysql/mysql-bin.log

2. 配置复制链路

mysql> CHANGE MASTER TO
    MASTER_HOST='主服务器IP',
    MASTER_USER='replica',
    MASTER_PASSWORD='密码',
    MASTER_LOG_FILE='mysql-bin.000001',
    MASTER_LOG_POS=位置值;

四、验证与监控

1. 启动复制进程

mysql> START SLAVE;
mysql> SHOW SLAVE STATUS\G

2. 关键监控指标

  • Slave_IO_Running: Yes
  • Slave_SQL_Running: Yes
  • Seconds_Behind_Master: 应接近于0

五、常见问题解决

1. 复制中断处理

当出现复制错误时,可尝试:

mysql> STOP SLAVE;
mysql> SET GLOBAL sql_slave_skip_counter = 1;
mysql> START SLAVE;

2. 网络问题排查

使用telnet测试3306端口连通性:

telnet 主服务器IP 3306

通过本文详细的步骤指导,您应该已经成功在Linux云服务器上配置了MySQL主从复制。定期检查复制状态和性能指标,可以确保数据同步的可靠性。对于生产环境,建议进一步配置复制监控告警系统。

如本公告涉及你的产品,或有不清楚之处,可提交工单确认。

提交工单