目录
主从复制配置
1. 在主库上开启二进制日志记录功能
在主库上的 `my.cnf` 配置文件中,将 `log-bin` 参数设置为二进制日志记录的文件名(例如:`log-bin=mysql-bin`),并设置 `server-id` 参数来标识主库的唯一 ID 号
[mysqld] log-bin=mysql-bin server-id=1
2. 在主库上创建一个用于从库访问的备份用户
在主库上创建一个用于从库访问的备份用户,并授予其 `REPLICATION SLAVE` 权限
CREATE USER 'backup'@'%' IDENTIFIED BY 'password'; GRANT REPLICATION SLAVE ON *.* TO 'backup'@'%';
CREATE USER 'backup'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'backup'@'%';3.在从库服务器上配置my.cnf配置文件,增加
log-bin=mysql-bin server-id=2
4. 在主库上获取二进制日志文件和位置信息
在主库上获取当前正在写入的二进制日志文件名和位置信息
SHOW MASTER STATUS;
该命令的输出结果包含主库当前正在写入的二进制日志文件名 `File` 和位置 `Position`。将这两个值记录下来,后面将用到
5、在从库上添加主库信息
CHANGE MASTER TO MASTER_HOST='master-host', MASTER_USER='backup', MASTER_PASSWORD='password', MASTER_LOG_FILE='master-log-file', MASTER_LOG_POS=master-log-pos;
在从库上执行以下命令,添加主库的连接信息。其中 `master-host` 是主库的 IP 或主机名,`master-user` 和 `master-password` 是步骤 2 中创建的备份用户的用户名和密码,`master-log-file` 和 `master-log-pos` 是步骤 3 中获取的二进制日志文件名和位置信息
其中 `master-host`, `master-user`, `master-password`, `master-log-file`, `master-log-pos` 分别替换为实际的值
6. 启动从库的复制进程
在从库上执行以下命令,启动从库的复制进程
START SLAVE;
此时,从库将开始连接主库,并复制主库上的数据。当主从同步顺利进行时,执行以下命令可查看主从复制状态
SHOW SLAVE STATUS\G;
在输出结果中,可以查看到是否连接到主库、当前正在复制的二进制日志文件名和位置、复制延迟等信息。
需要注意的是,在进行 MySQL 主从复制的操作时,我们应该保持不断地监控和维护主从库之间的数据同步,及时发现和处理异常情况,从而确保数据库系统的高可用性和稳定性。