zabbix3.2监控MYSQL状态

一、概述

zabbix自带的MySQL插件来监控mysql数据库,但是太过简陋了,对于我们dba来说,基本没有啥作用,所以需要做更详细的监控,而percona就有这个详细监控的模版以及脚本,正好拿过来用。

percona官网: www.percona.com

Percona组成介绍

1、PHP脚本    用来数据采集

2、shell脚本  用来调用采集信息

3、zabbix配置文件

4、zabbix模板文件

二、安装及配置

1、下载及安装

https://www.percona.com/downloads/percona-monitoring-plugins/LATEST/

同时也支持Nagios和catcti

wget https://www.percona.com/downloads/percona-monitoring-plugins/percona-monitoring-plugins-1.1.7/binary/redhat/6/x86_64/percona-zabbix-templates-1.1.7-2.noarch.rpm

rpm -ivh percona-zabbix-templates-1.1.7-2.noarch.rpm

yum install percona-zabbix-templates php php-mysql -y

rpm -ql percona-zabbix-templates

/var/lib/zabbix/percona

/var/lib/zabbix/percona/scripts

/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh

/var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php

/var/lib/zabbix/percona/templates

/var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf

/var/lib/zabbix/percona/templates/zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.7.xml   为MYSQL监控模板

将配置文件拷贝到/etc/zabbix/zabbix_agentd.d/目录

cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/

vim /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php

$mysql_user = ‘root‘;

$mysql_pass = ‘‘;

$mysql_port = 3306;

$mysql_socket = NULL;

$mysql_flags = 0;

测试环境root密码为空,如果生产环境会创建专门只读账号。

需要改配置文件需要重启

/etc/init.d/zabbix-agent restart

进行测试会返回测试结果

cd /var/lib/zabbix/percona/scripts/

./get_mysql_stats_wrapper.sh gm

0

./get_mysql_stats_wrapper.sh gw

20060

2、导入模板

导入模板时报错"标签无效 "/zabbix_export/date": "YYYY-MM-DDThh:mm:ssZ" 预计"

解决办法

将zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.7.xml导入zabbix2.4中再导出。之后将新的导出xml导入到3.2中问题解决。

权限问题

Received value [rm: 无法删除"/tmp/localhost-mysql_cacti_stats.txt": 不允许的操作0] is not suitable for value type [Numeric (float)]

解决办法

cd /tmp

chown -R zabbix.zabbix localhost-mysql_cacti_stats.txt

/etc/init.d/zabbix-agent restart

时间: 2024-10-07 23:35:00

zabbix3.2监控MYSQL状态的相关文章

Zabbix 监控 Mysql 状态

简介: 如何使用 Zabbix 来监控 Mysql 状态 ? Zabbix 有自带监控 Mysql 的模板,但是却不能直接使用.. 需要我们根据模板提供的 Key 自己写脚本获取数据 1.查看都有哪些 Key > Configuration -> Templates ## 在此模板页中,可以看到 Template App MySQL 模板中有 14 个 Items ,我们需要自己写脚本获取这 14 个值 ## 分别是:Com_select.Com_insert .Com_update .Com

实时监控MySql状态

大多网站的性能瓶颈都会出在数据库上,所以想把Mysql监控起来,就搜索了下相关资料. 后来和同事讨论了下cacti和nagios有些老套和过时,graphite比较时尚,然后就搜了下相关的资料,最后搞出来了,效果如下 可以实时查看mysql打开的table数,文件数,正在执行,已经创建,已经连接的线程数,锁,查询缓存,表扫描相关的计数器,以及已经完成的select,insert, delete, update的sql数等,总之Mysql的各种状态一览无余. 具体各个指标的意思参考如下链接: ht

Zabbix添加自定义监控项之(监控mysql状态)

一.实验环境 Zabbixserver    192.168.1.103    版本:V3.0.4 ZabbixAgent    192.168.1.128 Mysql       192.168.1.102 二.监控需求 监控mysql的状态,当状态发生异常,发出报警 三.mysql添加监控监控脚本 3.1.使用mysqladmin工具来检测mysql状态 [email protected]:~# mysqladmin -uroot -p1qaz#EDC ping 说明:如果MySQL状态正常

zabbix3.0 监控mysql服务免用户名密码登录的问题故障处理详细过程

1,My.cnf中用户名密码无效 在azure云上面,使用Zabbix监控mysql中,发现在/usr/local/mysql/my.cnf里面设置的默认用户名密码无效,出不来数据,而且在zabbix服务器上,使用zabbix_get也报错failed,如下 [[email protected]_serv_121_12 ~]#/usr/local/zabbix/bin/zabbix_get -s 192.168.13.13 -p10050 -kmysql.status[Uptime] /usr/

zabbix监控mysql状态

之前是cacti监控的mysql,很多参数监控的不是特别明白,想着就找zabbix监控. 写好监控MYSQL的配置文件 UserParameter=mysql.Ping,mysqladmin -uroot -p123456  ping|grep alive|wc -l UserParameter=mysql.Threads,mysqladmin -uroot -p123456  status|cut -f3 -d":"|cut -f1 -d"Q" UserParam

zabbix3.0监控mysql配置

zabbix3.0 server已自带mysql的模板了,只需配置好agent客户端,然后在web端给主机增加模板就行了. 下面是公司线上的zabbix3.0环境下添加mysql监控操作记录 Zabbix_agent客户端操作 (1)首先在客户端的mysql里添加权限 mysql> grant all on *.* to [email protected]'localhost' identified by "123456”; mysql> flush privileges; (2)在

zabbix3.0监控mysql数据库

根据Percona官方提供的方案来做对MySQL数据库的监控,具体请参考:https://www.percona.com/doc/percona-monitoring-plugins/1.1/zabbix/index.html 1.首先安装Percona源 # yum install http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm 2.安装zabbix A

Zabbix3.4监控mongodb状态

mongodb有db.serverStatus()命令,可以查看mongodb的运行状态,那么zabbix就可以调用这个命令实现mongodb的监控. 一.db.serverStatus()命令的使用 注:只有超级管理员账号才有权限使用此命令1.查看mongodb服务状态 echo "db.serverStatus()" | mongo --port 37485 -u username -p 'password' --authenticationDatabase 'admin' 2.查

shell 监控mysql状态

#!/bin/bash #/usr/bin/nmap localhost | grep 3306 #lsof -i:3306 MYSQLPORT=`netstat -na|grep "LISTEN"|grep "3306"|awk -F[:" "]+ '{print $5}'` function checkMysqlStatus(){ /usr/bin/mysql -uroot -paaaaaa --connect_timeout=5 -e &q