show slave status\g须在mysql客户端执行,关键看slave_io_running、slave_sql_running是否为yes及seconds_behind_master是否稳定≤3;gtid模式下重启需谨慎,延迟持续>60秒须干预。
SHOW SLAVE STATUS\G 必须在 MySQL 客户端里执行
直接在 Linux shell 输入 SHOW SLAVE STATUS\G 会报错 bash: show: command not found,因为这是 SQL 命令,不是系统命令。必须先登录 MySQL 客户端再运行。
-
本地部署:执行
mysql -uroot -p,输密码后进入 - Docker 环境:先进容器
docker exec -it mysql_slave1 bash,再执行mysql -uroot -p - 确认当前连接的是从库(
node1或mysql-node2),不是主库
关键字段怎么看:三个核心状态缺一不可
SHOW SLAVE STATUS\G 输出中,只看这三个字段就能快速判断复制是否健康:
-
Slave_IO_Running: Yes—— IO 线程正常,能连上主库并拉 binlog -
Slave_SQL_Running: Yes—— SQL 线程正常,能解析 relay log 并执行 -
Seconds_Behind_Master: 0或稳定小值(如 1~3)—— 表示延迟基本可控;持续增长说明积压
只要其中任一为 No,或 Seconds_Behind_Master 突然飙升,就代表同步中断或卡住。此时务必检查 Last_IO_Error 和 Last_SQL_Error 字段内容,它们是定位问题的第一线索。