指导用户在Linux环境下完成MySQL 5.7数据库的主从复制配置。

一、 环境准备

  1. 两台安装CentOS 7的服务器,分别作为主服务器和从服务器。
  2. 确保两台服务器之间网络互通。
  3. 在两台服务器上分别安装MySQL 5.7数据库软件。

二、 主服务器配置

  1. 修改MySQL配置文件/etc/my.cnf,添加以下内容:

    sql

    [mysqld]

    server-id = 1 # 设置主服务器ID,建议使用唯一数字标识

    log-bin = mysql-bin # 开启二进制日志

    binlog-do-db = your_database_name # 指定需要同步的数据库

  2. 重启MySQL服务,使配置生效:

    bash

    systemctl restart mysqld

  3. 创建用于同步的数据库用户并授权:

    sql

    CREATE USER 'replication_user'@'%' IDENTIFIED BY 'password';

    GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%';

    FLUSH PRIVILEGES;

  4. 记录主服务器的二进制日志文件名称和位置:

    sql

    SHOW MASTER STATUS;

三、 从服务器配置

  1. 修改MySQL配置文件/etc/my.cnf,添加以下内容:

    sql

    [mysqld]

    server-id = 2 # 设置从服务器ID,必须与主服务器ID不同

    log-bin = mysql-bin # 开启二进制日志

    relay-log = mysql-relay-bin # 开启中继日志

  2. 重启MySQL服务,使配置生效:

    bash

    systemctl restart mysqld

  3. 配置主从复制关系:

    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; # 主服务器二进制日志位置

  4. 启动从服务器的同步线程:

    sql

    START SLAVE;

四、 验证主从复制

  1. 在主服务器上创建数据表并插入数据。
  2. 在从服务器上查询对应数据表,确认数据已同步。

注意事项

  • 确保主从服务器时间同步。
  • your_database_name 应替换为实际需要同步的数据库名。
  • master_server_ip, password, mysql-bin.000001123需要根据实际情况修改。

总结

在Linux环境下配置MySQL 5.7主从复制的基本步骤。通过主从复制,可以提高数据库的可用性和数据安全性。