Mysql

关注公众号 jb51net

关闭
首页 > 数据库 > Mysql > MySQL查看主从复制状态

MySQL查看主从复制状态的方法与排错指南

作者:detayun

本文介绍了MySQL主从复制的关键监控命令和排错方法,核心是通过SHOW SLAVE STATUS\G命令检查Slave_IO_Running和Slave_SQL_Running状态,判断同步是否正常,希望对大家有所帮助

一、最核心命令(在从库执行,Windows Navicat / CMD都能用)

登录从库MySQL,执行这条命令:

SHOW SLAVE STATUS\G

注意:结尾是反斜杠+G,不要用分号。

重点看这两行,决定同步是否正常:

Slave_IO_Running

Slave_SQL_Running

二、几个关键状态字段解释

Last_IO_Error:IO线程报错信息,连不上主库时看这里。

Last_SQL_Error:SQL线程报错信息,同步中断、主键冲突都会写在这里。

Seconds_Behind_Master:主从延迟时间(单位秒)

Replicate_Wild_In_Table_List:可以查看你设置的【只同步部分表】的过滤规则是否生效。

三、主库上查看状态(主库执行)

查看主库二进制日志位置:

SHOW MASTER STATUS;

会显示当前binlog文件名和位置。

查看主库复制账号是否存在:

SELECT user,host FROM mysql.user WHERE user='repl';

四、Windows CMD 下查看完整日志(排查错误必备)

打开MySQL命令行

mysql -uroot -p

输入密码后执行:

SHOW SLAVE STATUS\G

五、常用启停命令

停止同步:

STOP SLAVE;

启动同步:

START SLAVE;

重置主从(重新搭建主从时使用):

RESET SLAVE ALL;

六、最简单的判断口诀

你把执行 SHOW SLAVE STATUS\G 的结果发给我,我可以直接帮你定位问题。

七、知识扩展

在 MySQL 中,查看主从同步状态最核心的命令是 SHOW REPLICA STATUS(MySQL 8.0.22 及之后版本,旧版使用 SHOW SLAVE STATUS)。这条命令会返回一条包含大量字段的记录,通过解读这些字段,可以全面判断复制的健康状况。

建议在从库(Slave/Replica)上执行,并使用 \G 以垂直格式输出,方便阅读长字段。

SHOW REPLICA STATUS\G

注意:如果你使用的 MySQL 版本低于 8.0.22,请将命令中的 REPLICA 替换为 SLAVE

需要重点关注的 6 个核心指标

在输出的大量字段中,以下几个字段是判断同步状态是否正常的核心:

Slave_IO_Running(IO 线程)

Slave_SQL_Running(SQL 线程)

Seconds_Behind_Master(同步延迟秒数)

Last_IO_Error / Last_SQL_Error(最近的错误信息)

当上述两个线程状态不是 Yes 时,这两个字段会显示具体的报错原因,是排查问题的第一手资料。

Master_Log_File 与 Read_Master_Log_Pos

表示 IO 线程已读取到的主库 binlog 文件名和位置。

Relay_Master_Log_File 与 Exec_Master_Log_Pos

判断同步是否正常的流程

排查复制故障的常用命令

查看具体错误日志

SHOW REPLICA STATUS\G

重点关注 Last_IO_Error 和 Last_SQL_Error 字段。

查看主库的同步状态(判断主库写入压力):

SHOW MASTER STATUS;

用于确认当前的 binlog 文件名和位置,方便从库管理员与 Master_Log_File 对比。

查看复制线程信息

SHOW PROCESSLIST;

在输出中查找 system user 相关的复制线程,可查看其当前工作状态。

其他常用的监控方式

使用 performance_schema

SELECT * FROM performance_schema.replication_connection_status\G
SELECT * FROM performance_schema.replication_applier_status\G

这些表提供了比 SHOW REPLICA STATUS 更结构化的数据,适合用于监控脚本。

使用第三方工具:如 pt-heartbeat(Percona Toolkit),这是一种更精确的延迟监控方法,适合对延迟要求较高的生产环境。

到此这篇关于MySQL查看主从复制状态的方法与排错指南的文章就介绍到这了,更多相关MySQL查看主从复制状态内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文