MySQL主从复制监控核心是确认复制正常、无延迟、无错误,重点检查IO线程连接、SQL线程执行及Seconds_Behind_Master是否稳定;需关注SHOW SLAVE STATUS中的Slave_IO_Running、Slave_SQL_Running、Seconds_Behind_Master、Relay_Log_Space、Last_IO_Errno/Last_SQL_Errno等字段,避免假“正常”陷阱,并结合脚本巡检与Prometheus+Grafana长期跟踪。

MySQL主从复制的监控核心是确认复制是否正常运行、有无延迟、是否存在错误。重点看三个指标:IO线程是否连接主库、SQL线程是否在执行、Seconds_Behind_Master是否持续为0或稳定波动。
在从库执行 SHOW SLAVE STATUS\G,重点关注以下几项:
Yes,表示从库能连上主库并接收binlogYes,表示从库正在回放relay log可写简单Shell脚本定时检查关键字段,例如:
mysql -uuser -ppass -e "SHOW SLAVE STATUS\G" | grep -E "Slave_IO_Running|Slave_SQL_Running|Seconds_Behind_Master|Last_IO_Errno|Last_SQL_Errno"
配合 crontab 每分钟执行一次,异常时发邮件或写日志。注意避免高频查询影响性能,生产环境建议5–30秒间隔更稳妥。
推荐用Prometheus + mysqld_exporter采集指标,再通过Grafana可视化:
mysql_slave_status_seconds_behind_master 趋势图,设阈值告警(如 > 120s 持续2分钟)mysql_slave_status_slave_io_running 和 mysql_slave_status_slave_sql_running 的布尔状态变化mysql_global_status_commands_total{command="com_commit"} 对比主从QPS,辅助判断复制压力有些状态看似OK,实则隐患已埋下:
Seconds_Behind_Master: NULL:不是延迟大,而是SQL线程没启动或刚启动,需结合Slave_SQL_Running判断Seconds_Behind_Master: 0但 Relay_Log_Pos 长期不更新:可能是主库没新写入,也可能是IO线程假连(实际断开但未超时)Retrieved_Gtid_Set 和 Executed_Gtid_Set 不一致:说明部分事务没执行,不能只看Seconds_Behind_Master
不复杂但容易忽略的是持续观察和横向对比——单次检查只能看快照,结合历史趋势和主从负载才能真正定位问题根源。
以上就是mysql主从复制如何监控状态_mysql复制监控思路的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号