加入收藏 | 设为首页 | 会员中心 | 我要投稿 大连站长网 (https://www.0411zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

使用zabbix怎么监控MySQL主从状况

发布时间:2022-02-14 18:51:21 所属栏目:MySql教程 来源:互联网
导读:本篇文章为大家展示了使用zabbix怎么监控MySQL主从状态,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。 一般情况下,在MySQL的从上查看从的运行状态是通过Slave_IO_Running线程和Slave_SQL_Running线程是否ok
      本篇文章为大家展示了使用zabbix怎么监控MySQL主从状态,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
 
      一般情况下,在MySQL的从上查看从的运行状态是通过Slave_IO_Running线程和Slave_SQL_Running线程是否ok,通过命令“show slave statusG;”即可查看。所以这里根据这两个值进行判断。
  
agent端脚本编写及配置
 
说明:所有zabbix相关的脚本我都放在了/etc/zabbix/script/ 目录里面,下面这些都是在zabbix被监控端上操作,并且上面数据库是属于MySQL主从的从
 
1)脚本编写
 
[root@srt-xt ~]# cd /etc/zabbix/script/
[root@srt-xt /etc/zabbix/script]# cat mysql_slvae_status.sh
#!/bin/bash
#Desc:用于获取主从同步信息,判断主从是否出现异常,然后提交给zabbix
#Date: 2019-06-06
#by:Lee-YJ
USER="root"
PASSWD="nae3eabo9naeli1Oov1a"
NAME=$1
function IO {
  Slave_IO_Running=`mysql -u $USER -p$PASSWD -e "show slave statusG;" 2> /dev/null |grep Slave_IO_Running |awk '{print $2}'`
  if [ $Slave_IO_Running == "Yes" ];then
    echo 0
  else
    echo 1
  fi
}
function SQL {
  Slave_SQL_Running=`mysql -u $USER -p$PASSWD -e "show slave statusG;" 2> /dev/null |grep Slave_SQL_Running: |awk '{print $2}'`
  if [ $Slave_SQL_Running == "Yes" ];then
    echo 0
  else
    echo 1
  fi
}
case $NAME in
  io)
    IO
  ;;
  sql)
    SQL
  ;;
  *)
    echo -e "Usage: $0 [io | sql]"
esac
2)配置文件修改,编写一个自配置文件,里面指定上面编写的脚本的路径
 
[root@srt-xt ~]# cd /etc/zabbix/zabbix_agentd.d/
 
[root@srt-xt /etc/zabbix/zabbix_agentd.d]# cat userparameter_mysql_slave.conf
# 获取MySQL slave状态
UserParameter=mysql.slave[*],/etc/zabbix/script/mysql_slvae_status.sh $1
3)重启zabbix-agent
 
[root@srt-xt /etc/zabbix/zabbix_agentd.d]# /etc/init.d/zabbix-agent restart
4)在zabbix-server端进行测试,看是否能够成功获取到值,通过上面的脚本,这里为0即表示正常,为1即表示不正常。

(编辑:大连站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!