当前位置: 首页 > article >正文

【MySQL数据库】MySQL 主从复制检查方式

1. 在从库检查复制状态

在从库(Slave)上执行:

SHOW SLAVE STATUS\G;

关注以下关键字段:

Slave_IO_Running: Yes → I/O 线程是否正常

Slave_SQL_Running: Yes → SQL 线程是否正常

Seconds_Behind_Master: 0 → 复制延迟时间(理想情况下应为 0 或接近 0)

Last_IO_Error 和 Last_SQL_Error → 检查是否有错误

如果 Slave_IO_Running 或 Slave_SQL_Running 为 No,说明复制有问题。

2. 在主库检查主从连接

在主库(Master)上执行:

SHOW PROCESSLIST;

查看是否有 Binlog Dump 线程(表示主库正在向从库发送 binlog):

| Id  | User    | Host      | db   | Command     | Time | State        | Info |
|---- |--------|----------|-----|------------|------|-------------|------|
| 5   | repl   | 192.168.1.2:34678 | NULL | Binlog Dump | 120  | Master has sent all binlog to slave; waiting for more updates | NULL |

如果没有 Binlog Dump 线程,则可能主库未向从库发送日志,需要检查主库的 binlog 配置。

3. 检查主库的二进制日志(Binlog)

SHOW MASTER STATUS;

输出示例:

+------------------+----------+--------------+------------------+
| File            | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 |  987654  | testdb       |                  |
+------------------+----------+--------------+------------------+

确保 File 和 Position 在从库同步过程中发生变化。

4. 在从库检查 Relay Log 状态

SHOW RELAYLOG EVENTS LIMIT 10;

如果 relay log 没有更新,则可能从库的 IO 线程有问题。

5. 检查网络连通性

如果 Slave_IO_Running 为 No,可以测试从库到主库的连接:

telnet 主库IP 3306

或者使用 mysql -h 连接主库,检查是否能正常访问。

6. 查看 MySQL 错误日志

主库错误日志(检查 binlog 相关错误):

cat /var/log/mysql/error.log

从库错误日志(检查复制错误):

cat /var/log/mysql/error.log

7. 解决常见问题

问题可能原因解决方案
Slave_IO_Running: No端口未开放、防火墙阻拦确保主库 3306 端口开放,并检查 iptables 或 firewalld 规则
Slave_SQL_Running: NoSQL 执行错误 SHOW SLAVE STATUS\G;查看 Last_SQL_Error,手动修复错误
Seconds_Behind_Master 较大复制延迟可能是主库负载过高或网络问题,检查 CPU、IO 和网络带宽
SHOW MASTER STATUS 无输出binlog 未开启在 my.cnf 中添加 log_bin=mysql-bin 并重启 MySQL

如果主从复制仍然无法恢复,可以尝试
STOP SLAVE;
RESET SLAVE;
CHANGE MASTER TO …;
START SLAVE;
重新配置。


http://www.kler.cn/a/614338.html

相关文章:

  • es6 fetch
  • 【商城实战(100)】商城败局启示录:探寻成功的反方向
  • 算法刷题记录——题解目录汇总(持续更新)
  • 拦截器和过滤器详解
  • Centos与Ubuntu系统的对比分析
  • 《K230 从熟悉到...》矩形检测
  • [GXYCTF2019]禁止套娃1 [GitHack] [无参数RCE]
  • 算法基础——树
  • 表单对象与当前行对象的 区别
  • [编程题]16、偶数求和
  • 4月手机新品前瞻,影像,性能与设计卷得起飞
  • 图解AUTOSAR_SWS_SPIHandlerDriver
  • Git项目要改变仓库地址
  • 生成树和VRRP实验
  • 第十三章:面向对象思想(OOP)与面向过程思想的对比与应用
  • 如何缩短研发周期,降低研发成本?全星APQP软件为您提供解决方案
  • 29_项目
  • QML中使用Image显示图片和使用QQuickItem显示图片
  • 【C#】关键字 volatile
  • JVM - 垃圾回收器常见问题