如何配置 MySQL 主从复制
步骤 1:设置主服务器
-
创建一个包含待复制数据的 MySQL 数据库实例。
启用二进制日志记录(binlog)。为此,请编辑
my.cnf配置文件并添加以下行:
<code>[mysqld] log-bin=<log_file_name></code>
授予复制用户权限:
<code>GRANT REPLICATION SLAVE ON *.* TO 'username'@'hostname' IDENTIFIED BY 'password';</code>
步骤 2:设置从服务器
-
创建一个新的 MySQL 数据库实例。
从主服务器导入数据库模式和数据。
停止从服务器上的 MySQL 服务。
编辑
my.cnf配置文件并添加以下行:
<code>[mysqld] server-id=<unique_id> replicate-do-db=<database_name_1>,<database_name_2>,... replicate-ignore-db=<database_name_1>,<database_name_2>,...</code>启动从服务器上的 MySQL 服务。
步骤 3:启动复制
连接到主服务器并执行以下命令:
<code>SHOW MASTER STATUS;</code>输出将显示主服务器的二进制日志文件名称和位置。
连接到从服务器并执行以下命令:
<code>CHANGE MASTER TO MASTER_HOST='<master_hostname>', MASTER_USER='<master_username>', MASTER_PASSWORD='<master_password>', MASTER_LOG_FILE='<master_log_file_name>', MASTER_LOG_POS=<master_log_pos>;</code>
步骤 4:验证复制
在从服务器上执行以下命令:
<code>SHOW SLAVE STATUS;</code>输出应显示
Slave_IO_Running和
Slave_SQL_Running为
Yes。
