使用zabbix监控mysql主从状态

公司mysql架构为一主多从。在日常使用过程中我们经常会遇到主从不同步的情况,为了及时处理此问题现使用zabbix监控mysql主从状态并设置触发器,如有异常则发送邮件报警。

我们都知道使用命令“show slave status \G”可以查看mysql从的状态,下面用脚本方式检查其状态。

在mysql-slave中进入zabbix-agent目录创建脚本文件。

cat mysql_slave_status.sh
#!/bin/bash
/usr/local/mysql/bin/mysql -uzabbix -e ‘show slave status\G‘ |grep -E "Slave_IO_Running|Slave_SQL_Running"|awk ‘{print $2}‘|grep -c Yes
chmod +x mysql_slave_status.sh

执行 mysql_slave_status.sh 结果为:2

如果结果不为2则表示主从同步异常,则报警!!

注意:将脚本放置到某目录(需要有权限),我这里放到/etc/zabbix/mysql_slave_status.sh 在zabbix_agentd.conf中最下方加入以下一条语句:

UserParameter=mysql.slavestatus,/etc/zabbix/mysql_slave_status.sh
#添加完成后必须重启zabbix-agentd服务
/etc/init.d/zabbix_agentd restart

之后在Zabbix-Server所在服务器执行以下语句,测试是否成功:

zabbix_get -s 192.168.1.101 -k  mysql.slavestatus

其中192.168.1.101为脚本所在服务器,mysql.slavestatus为Key值。若返回2,则表示主从服务正常。然后将该监控项在web平台测加入items,设置好报警通知即可。

访问zabbix---找到“组态”--》“主机”--》"项目"--创建项目

这里输入监控项名称--数据更新时间

接下来创建触发器。

触发器内容这里注意选择数值小于 2 的时候触发报警,严重性设置为“灾难”

至此,zabbix监控mysql主从状态完成。

时间: 2024-07-31 14:33:19

使用zabbix监控mysql主从状态的相关文章

zabbix监控mysql主从状态

首先上监控的脚本: #!/bin/bash status=`mysql -u root -p123 -e "show slave status\G" | egrep "Slave_IO_Running|Slave_SQL_Running" | awk -F: '{print $2}' | tr "\n" " "` arr_status=(`echo $status`) [[ ${arr_status[0]} =~ "

zabbix自定义监控mysql主从状态,并做邮件告警

 通过zabbix自定义监控mysql主从状态,并做邮件告警 分析: mysql主要是通过主从来提供安全性,一个完整的主从体系,就应该包括数据同步.开启二进制日志.全备.还有对Slave_IO_Running和Slave_SQL_Running两个线程的实时监测,并做告警,而zabbix监控软件就提供了很好的方法:对于zabbix这个监控软件,个人来说也是比较熟悉,现在的企业们都基本用的是zabbix软件来做系统的资源的监控,zabbix的强大不仅仅体现于,它自身自带的监控模板比较全面,而是通过

shell监控MySQL主从状态脚本两则

内容为自己的一点总结,如有不对欢迎狠劲儿拍砖 本文来自http://yijiu.blog.51cto.com/转载请经博主同意,翻版可耻 监控主从复制正常与否 相比各位都应该知道,监控主从是否工作正常,涉及命令如下: show slave status\G; 那么,我们需要关注的参数如下: 1. 首先查看SQL和IO线程是否为YES状态(想必各位都明白了) 2. 是否有延迟 是否大于0   #一般生成环境延迟是否大于500秒,如果大于500则报警,如大于1000则严重报警 #比如传递一个sql到

zabbix监控mysql主从同步

1,部署了个mysql从数据库,需要时时监控这个从数据库的主从状态.原理的话,是通过从mysql上的zabbix执行show slave status获取Slave_IO_Running|Slave_SQL_Running状态是否都为Yes来判断主从是否正常. MySQL同步功能由3个线程(master上1个,slave上2个)来实现,简单的说就是:master发送日志一个,slave接收日志一个,slave运行日志一个.首先,我们解释一下 show slave status 中重要的几个参数:

利用Zabbix监控mysql主从

mysql主从监控 #脚本如下,截取主从关键字 cat check_mysql_slave.sh  #!/bin/bash # declare -a 定义数组,slave_is 会被视为数组 declare -a slave_is slave_is=($(/data/mysql/bin/mysql -e "show slave status\G"|grep -E "Slave_IO_Running|Slave_SQL_Running:"|awk '{print $2

zabbix监控mysql数据库状态

Zabbix自己提供的模板可以监控mysql slow queries,mysqlversion,uptime,alive等. 1.Zabbix官方提供的监控mysql的模板Template AppMySQL,可以看到相关的Items和key. 2.把该模板Template App MySQL Link到相关的主机上面,发现Item的Status是不可用的,因为key的值是通过Mysql用户查看"showglobal status"信息或者用mysqladmin命令查看status或e

Zabbix监控mysql主从

1.编写监控主从SHELL脚本check_mysql_replication.sh,放在/etc/zabbix/下面 #!/bin/bash /usr/bin/mysql -uzabbix -p密码 -e 'show slave status\G' |grep -E "Slave_IO_Running|Slave_SQL_Running"|awk '{print $2}'|grep -c Yes 2.在从库上授权zabbix用户: grant replication client on

zabbix监控mysql主从同步和延迟

https://blog.csdn.net/natmazz/article/details/90581490 https://www.cnblogs.com/01-single/p/10602610.html 一.环境需求 主机A: zabbix-server 主机B: zabbix-agent/mysql从 二.主机B操作 1.添加监控脚本 vim /data/zabbix/mysql_slave_check.sh #!/bin/bash #2019年03月26日16:25 #auto che

Zabbix 监控Mysql数据库及主从数据库

Zabbix监控mysql主从数据库在脚步出现用户名和密码是会出现如下报错"Warning: Using a password on the command line interface can be insecure",报错原因是mysql 5.6版本增加了密码安全策略,之前版本可以使用的命令行里加上密码就会强制报错,所以使用zabbix监控mysql的时候,就会由于收到zabbix客户端日志报错信息.结合了网友的解决方案,现将整理出来供大家参考. 一,zabbix被监控端的设置: