linux的mysql主从同步搭建
时间: 2024-10-18 09:12:24 浏览: 5
在Linux上搭建MySQL主从同步(Master-Slave Replication),可以按照以下步骤进行:
1. **安装MySQL**:首先确保系统已安装MySQL,如果没有,可以从官网下载对应版本的二进制包或通过包管理器如Yum或Docker安装。
2. **配置主库**:
- 登录到主数据库服务器,打开`my.cnf`配置文件,启用二进制日志(`server-id`, `log-bin`)和复制相关的设置(如`binlog-do-db`选择需要复制的数据库,`expire_logs_days`控制旧的日志保留时间)。
```bash
[mysqld]
server-id = <主库ID>
log-bin = /var/log/mysql/mysql-bin.log
binlog-do-db = db_name1,db_name2
```
3. **启动并重启主库**:
- 启动MySQL服务并查看日志确认配置生效。
- 如果有错误,检查权限、网络设置以及磁盘空间。
4. **创建复制用户和授权**:
- 使用`GRANT REPLICATION SLAVE ON *.* TO 'slave_user'@'%' IDENTIFIED BY 'password';`命令为从库用户赋予复制权限。
5. **初始化从库**:
- 安装MySQL并在从库上运行`mysql_install_db`。
- 连接到从库,设置`server-id`为比主库小1的数字,并指定主库地址和用户名密码。
6. **设置从库**:
- 执行`CHANGE MASTER TO ...`命令,告诉从库指向主库的位置和复制参数,比如:
```sql
CHANGE MASTER TO
MASTER_HOST='master_host',
MASTER_USER='slave_user',
MASTER_PASSWORD='password',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=<主库位置>;
```
7. **开始同步**:
- 将从库状态设为“跟随”模式,`START SLAVE;`
- 监视复制状态,使用`SHOW STATUS LIKE '%slave%';`查看是否有延迟或错误。
8. **监控和调整**:
- 定期检查主从同步是否正常,如有必要调整`relay-log-purge`等参数优化性能。
- 使用`pt-heartbeat`或其它工具进行健康监控。
阅读全文