1.编辑zabbix监控脚本
vi /opt/zabbix_jb/1.sh
#!/bin/bash
a=`mysql -uroot -p密码 -e "show slave status\G" 2> /dev/null|grep Slave_IO_Running: |awk '{print $2}'`
b=`mysql -uroot -p密码 -e "show slave status\G" 2> /dev/null|grep Slave_SQL_Running: |awk '{print $2}'`
if [ $a == Yes ]; then
if [ $b == Yes ]; then
echo "1"
else
echo "0"
fi
else
echo "0"
fi
#解释一下以上脚本的内容,监控mysql从节点状态中的两项值,分别为Slave_IO_Running、Slave_SQL_Running,只要这两项状态均为Yes即主从同步正常
#以上命令中的 2>/dev/null 是将标准错误输出重定向到 /dev/null,也就是将错误信息丢弃,不显示在终端上,这样是为了在配置zabbix监控时不影响判断
下面来暂时一下有无2>/dev/null的区别
可以看到没有加2>/dev/null标准错误输出重定向的话,会输出多余的信息
2.脚本赋权
chmod +x /opt/zabbix_jb/1.sh
chown zabbix.zabbix /opt/zabbix_jb/1.sh
3.接下来的监控配置参考配置zabbix自定义监控项_Apex Predator的博客-CSDN博客