
mysql 5.7 主从配置
发布日期:2025-04-15 04:41:24
浏览次数:10
分类:精选文章
本文共 1993 字,大约阅读时间需要 6 分钟。
MySQL主从复制详细配置与故障排除
MySQL主从复制的原理
MySQL 的主从复制机制采用了三线程模型来实现数据同步。你可能对具体的复制过程不太熟悉,那我们就从基础开始讲解。
1.1 复制线程的作用
- I/O 线程:当从服务器接收到
START SLAVE
命令时,会创建一个I/O线程来连接主服务器,并读取主服务器的二进制日志(Binlog)。 - SQL 线程:负责读取中继日志(Relay Log),并执行其中的更新操作。
了解了这些线程的作用后,接下来我们就来看看如何在实际环境中配置主从服务器。
环境配置
1. 环境版本
[root@localhost ~]# cat /etc/redhat-releaseCentOS Linux release 7.3.1611 (Core)
2. 环境搭建
- 使用
oneinstack
安装MySQL:
# 安装完成后,验证MySQL版本MySQL [(none)]> status;
主服务器配置
1. 查看并配置二进制日志
[root@localhost ~]# vi /etc/my.cnf
- 查找
log_bin = mysql-bin
,如果没有该行,添加该行。 - 找到
server-id = 1
,记录主服务器的ID,确保它与从服务器的ID不同。
2. 启用二进制日志
MySQL [(none)]> show variables like 'log_bin';
3. 查看主服务器状态
MySQL [(none)]> show master status;
File
列显示当前二进制日志文件名,Position
列显示日志的偏移量。- 记录这些值,以便从服务器进行相应配置。
4. 创建访问用户
MySQL [(none)]> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'192.168.1.%' IDENTIFIED BY 'mysql';
从服务器配置
1. 查看并配置二进制日志
[root@localhost ~]# vi /etc/my.cnf
- 修改
server-id
为一个唯一的ID,不与主服务器重复。 - 配置完成后,重启MySQL服务。
2. 查看从服务器状态
[root@localhost ~]# vi /data/mysql/auto.cnf
3. 配置从服务器的主从关系
MySQL [(none)]> CHANGE MASTER TO -> MASTER_HOST='192.168.1.103', -> MASTER_USER='repl', -> MASTER_PASSWORD='mysql', -> MASTER_LOG_FILE='mysql-bin.000017', -> MASTER_LOG_POS=503;
4. 启动从服务器的复制
MySQL [(none)]> start slave;
5. 验证从服务器状态
MySQL [(none)]> show slave status \G;
Slave_IO_Running
和Slave_SQL_Running
都应为Yes
,否则查看mysql-error.log
排查问题。
6. 查看错误日志
MySQL [(none)]> show variables like 'log_error%';
故障排除
1. 主服务器或从服务器异常
如果主服务器或从服务器出现问题,如何处理?
- 主服务器故障:重启主服务器后,从服务器会自动重新连接并继续复制。
- 从服务器故障:从服务器在恢复后会重新连接主服务器,继续同步。
2. 复制中断
如果出现Last_IO_Errno: 2003
错误,说明从服务器无法连接到主服务器。
MySQL [(none)]> stop slave;MySQL [(none)]> reset slave;MySQL [(none)]> CHANGE MASTER TO -> MASTER_HOST='192.168.1.103', -> MASTER_USER='repl', -> MASTER_PASSWORD='mysql', -> MASTER_LOG_FILE='mysql-bin.000017', -> MASTER_LOG_POS=503;MySQL [(none)]> start slave;
3. 查看二进制日志事件
如果需要查看具体的二进制日志事件,可以执行以下命令:
MySQL [(none)]> show binlog events in 'mysql-bin.000017';
通过以上步骤,你应该能够完成MySQL主从复制的配置和管理。如果有任何问题,可以参考MySQL官方文档或相关技术论坛获取更多帮助。
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月28日 19时17分02秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
MySQL 在并发场景下的问题及解决思路
2025-04-15
MySQL 在控制台插入数据时,中文乱码问题的解决
2025-04-15
mysql 基准测试
2025-04-15
mysql 基础教程 一
2025-04-15
MySQL 基础架构
2025-04-15
MySQL 基础模块的面试题总结
2025-04-15
MySQL 处理插入重主键唯一键重复值办法
2025-04-15
Mysql 备份
2025-04-15
MySQL 备份 Xtrabackup
2025-04-15
mysql 复杂查询_mysql中复杂查询
2025-04-15
mYSQL 外键约束
2025-04-15
mysql 多个表关联查询查询时间长的问题
2025-04-15
mySQL 多个表求多个count
2025-04-15
mysql 多字段删除重复数据,保留最小id数据
2025-04-15
MySQL 多表联合查询:UNION 和 JOIN 分析
2025-04-15
MySQL 大数据量快速插入方法和语句优化
2025-04-15
mysql 如何给SQL添加索引
2025-04-15
mysql 字段区分大小写
2025-04-15
mysql 字段合并问题(group_concat)
2025-04-15
mysql 字段类型类型
2025-04-15