首页/数据/数据库速查/复制健康巡检脚本(实战)
本包目录(495 条)
MySQL 基础与连接36 条SQL 语法52 条用户与权限21 条备份与恢复56 条主从复制与高可用53 条性能与调优57 条Redis 命令96 条
Redis 运维与场景124 条

复制健康巡检脚本(实战)

写一个 5 行的巡检脚本:对比主从 offset、检查链路状态、输出延迟字节数;可挂到 cron/监控系统做日常巡检。

数据库速查数据更新于 2026-10-12

巡检脚本示例

巡检脚本示例
#!/bin/bash
M=$(redis-cli -h 10.0.0.10 INFO replication | grep master_repl_offset | cut -d: -f2 | tr -d '\r')
S=$(redis-cli -h 10.0.0.11 INFO replication | grep slave_repl_offset | cut -d: -f2 | tr -d '\r')
LINK=$(redis-cli -h 10.0.0.11 INFO replication | grep master_link_status | cut -d: -f2 | tr -d '\r')
echo link=$LINK master=$M slave=$S diff=$((M-S))
[ "$LINK" = "up" ] && [ $((M-S)) -lt 1048576 ] || echo ALERT
diff主从 offset 字节差
阈值示例 1MB,按写入速率调整
告警link != up 或 diff 持续超阈值
巡检频率 1 分钟足够;高频采集本身会给 Redis 增加 INFO 开销(不大但别 1 秒一次)。

易错点

  • 阈值固定 1MB 用在低写入实例:永远不告警;用在高写入实例:天天误报,要按基线调整
  • 脚本不处理 redis-cli 连接失败:网络故障时取到空值反而报正常

数据来源与参考

  • Redis 官方文档: INFO replication
  • Redis 官方文档: 复制(监控)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌