zabbix监控mysql

Posted 花未全开月未圆

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zabbix监控mysql相关的知识,希望对你有一定的参考价值。

[root@monitor scripts]# cat checkmysqlperformance.sh 
#!/bin/sh 
#Create by sfzhang 2014.02.20 
MYSQL_SOCK="/data/mysql/3306/mysql.sock" 
MYSQL_PWD=`cat /data/mysql/3306/.mysqlpassword` 
ARGS=1 
if [ $# -ne "$ARGS" ];then 
    echo "Please input one arguement:" 
fi 
case $1 in 
    Uptime) 
        result=`mysqladmin -uroot -p${MYSQL_PWD} -S $MYSQL_SOCK status|cut -f2 -d":"|cut -f1 -d"T"` 
            echo $result 
            ;; 
        Com_update) 
            result=`mysqladmin -uroot -p${MYSQL_PWD} -S $MYSQL_SOCK extended-status |grep -w "Com_update"|cut -d"|" -f3` 
            echo $result 
            ;; 
        Slow_queries) 
        result=`mysqladmin -uroot -p${MYSQL_PWD} -S $MYSQL_SOCK status |cut -f5 -d":"|cut -f1 -d"O"` 
                echo $result 
                ;; 
    Com_select) 
        result=`mysqladmin -uroot -p${MYSQL_PWD} -S $MYSQL_SOCK extended-status |grep -w "Com_select"|cut -d"|" -f3` 
                echo $result 
                ;; 
    Com_rollback) 
        result=`mysqladmin -uroot -p${MYSQL_PWD} -S $MYSQL_SOCK extended-status |grep -w "Com_rollback"|cut -d"|" -f3` 
                echo $result 
                ;; 
    Questions) 
        result=`mysqladmin -uroot -p${MYSQL_PWD} -S $MYSQL_SOCK status|cut -f4 -d":"|cut -f1 -d"S"` 
                echo $result 
                ;; 
    Com_insert) 
        result=`mysqladmin -uroot -p${MYSQL_PWD} -S $MYSQL_SOCK extended-status |grep -w "Com_insert"|cut -d"|" -f3` 
                echo $result 
                ;; 
    Com_delete) 
        result=`mysqladmin -uroot -p${MYSQL_PWD} -S $MYSQL_SOCK extended-status |grep -w "Com_delete"|cut -d"|" -f3` 
                echo $result 
                ;; 
    Com_commit) 
        result=`mysqladmin -uroot -p${MYSQL_PWD} -S $MYSQL_SOCK extended-status |grep -w "Com_commit"|cut -d"|" -f3` 
                echo $result 
                ;; 
    Bytes_sent) 
        result=`mysqladmin -uroot -p${MYSQL_PWD} -S $MYSQL_SOCK extended-status |grep -w "Bytes_sent" |cut -d"|" -f3` 
                echo $result 
                ;; 
    Bytes_received) 
        result=`mysqladmin -uroot -p${MYSQL_PWD} -S $MYSQL_SOCK extended-status |grep -w "Bytes_received" |cut -d"|" -f3` 
                echo $result 
                ;; 
    Com_begin) 
        result=`mysqladmin -uroot -p${MYSQL_PWD} -S $MYSQL_SOCK extended-status |grep -w "Com_begin"|cut -d"|" -f3` 
                echo $result 
                ;; 
                        
        *) 
        echo "Usage:$0(Uptime|Com_update|Slow_queries|Com_select|Com_rollback|Questions)" 
        ;; 
esac

 

然后编辑zabbix_agentd.conf

 

UserParameter=mysql.version,mysql -V 
UserParameter=mysql.ping,mysqladmin -uroot -p123456 -S /data/mysql/3306/mysql.sock ping | grep -c alive 
UserParameter=mysql.status[*],/etc/zabbix/scripts/checkmysqlperformance.sh $1 $2

1.创建监控所需mysql账户(agent端):

grant usage on *.* to zabbix@127.0.0.1 identified by 123456;
flush privileges;

 

 
2.agent端:创建.my.cnf并检查zabbix账号是否能正常连接数据库
/etc/zabbix/下创建一个包含MySQL用户名和密码的配置文件“.my.cnf”

[client]
user=zabbix
host=127.0.0.1
password=123456

 

有了这个文件后,检查zabbix账号是否能正常连接数据库:
HOME=/etc/zabbix/ mysqladmin ping | grep -c alive

 

echo "mysqlpassword" > /data/mysql/3306/.mysqlpassword



重启zabbix-agent

 

参考:https://blog.csdn.net/Hwh1231/article/details/82740747

http://www.bubuko.com/infodetail-759404.html







以上是关于zabbix监控mysql的主要内容,如果未能解决你的问题,请参考以下文章

使用 zabbix 自动发现监控 MySQL

zabbix监控mysql-如何使用zabbix自带的模板监控-nagios监控mysql主从

实战案例:Zabbix监控MySQL主机

zabbix监控windows mysql脚本报错

zabbix监控mysql+报警

zabbix监控mysql报警