mysql如何查看主从复制状态

答案是通过SHOW SLAVE STATUS命令查看主从复制状态,重点关注Slave_IO_Running、Slave_SQL_Running和Seconds_Behind_Master等字段判断复制是否正常。

mysql如何查看主从复制状态

在 MySQL 中查看主从复制状态,主要通过 SHOW SLAVE STATUS 命令来获取详细信息。这个命令会返回从库的复制线程运行情况、延迟、错误等关键指标。

1. 执行命令查看从库状态

登录到从库的 MySQL 客户端,执行以下命令:

SHOW SLAVE STATUSG

注意:使用 G 而不是分号可以格式化输出,让结果更易读。

2. 关键字段说明

重点关注以下几个字段:

  • Slave_IO_Running:显示 IO 线程是否正常运行。正常为 Yes,表示正在从主库读取 binlog。
  • Slave_SQL_Running:显示 SQL 线程是否正常运行。正常为 Yes,表示正在应用中继日志。
  • Last_ErrorLast_IO_Error:如果有错误,这里会显示具体的错误信息。
  • Seconds_Behind_Master:表示从库落后主库的秒数。为 0 表示同步及时,数值较大说明存在延迟。
  • Master_Host:当前主库的 IP 或主机名。
  • Relay_Log_PosRead_Master_Log_Pos:可用来判断日志是否在推进。

3. 快速检查复制是否正常

如果只是想快速确认复制是否正常,可以在命令行中这样检查:

SHOW SLAVE STATUSG

查看输出中:

  • Slave_IO_Running: Yes
  • Slave_SQL_Running: Yes
  • Seconds_Behind_Master: 接近 0
  • 没有 Last_Error 内容

满足以上条件,通常表示主从复制工作正常。

4. 其他常用辅助命令

  • SHOW PROCESSLIST;:查看当前线程,关注 system user 的 I/O 和 SQL 线程状态。
  • SHOW MASTER STATUS;:在主库上执行,查看当前 binlog 位置,用于核对同步点。

基本上就这些。只要定期检查 SHOW SLAVE STATUS 的输出,就能掌握主从复制的健康状态。遇到问题优先看错误信息和线程运行状态,大部分异常都能从中定位。

mysql ssl 格式化输出 sql mysql 线程

上一篇
下一篇