MySQL 主从复制是实现数据冗余、负载均衡和故障恢复的核心技术。以下是关键步骤说明:

1. 配置主服务器 🛠️

  • 修改 my.cnf 文件,添加以下内容:
    server-id=1
    log-bin=mysql-bin
    binlog-format=row
    
  • 创建复制用户并授权:
    CREATE USER 'repl'@'%' IDENTIFIED BY 'password';
    GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
    

[!tip] 详细配置可参考:MySQL主从复制详解

2. 配置从服务器 📁

  • 设置 server-id 为唯一值(如 2
  • 指定主服务器信息:
    CHANGE MASTER TO
      MASTER_HOST='主服务器IP',
      MASTER_USER='repl',
      MASTER_PASSWORD='password',
      MASTER_LOG_FILE='mysql-bin.123',
      MASTER_LOG_POS=456;
    
  • 启动复制进程:
    START SLAVE;
    

3. 验证复制状态 🧪

  • 查看从服务器状态:
    SHOW SLAVE STATUS\G
    
  • 关注 Seconds_Behind_Master 字段,确认数据同步延迟

常见问题排查 🛠️

  • ✅ 复制延迟过高:检查网络和主库写入压力
  • ⚠️ 复制中断:查看错误日志(/var/log/mysql/error.log
  • 🔄 主从数据不一致:确保 binlog-format 一致且事务完整

[!primary] 深入学习MySQL集群可访问:MySQL集群架构