1,将监控项写进脚本
[root@kafka01 scripts] vim /etc/zabbix/scripts/check_mysql.sh
[root@kafka01 scripts] cat /etc/zabbix/scripts/check_mysql.sh
#!/bin/bash
uptime=$(mysqladmin status | awk '{print $2}')#定义变量
case $1 in
qps)#每秒处理的请求数
questions=$(mysqladmin status | awk '{print $6}')
echo $[$questions/$uptime]
;;
tps)#每秒处理的事务数
commit=$(mysqladmin extended-status | grep -w Com_commit | awk '{print $4}')
rollback=$(mysqladmin extended-status | grep -w Com_rollback | awk '{print $4}')
echo $[($commit+$rollback)/$uptime]
;;
slave_status)#主从
mysql -umysql -p123 -e "show slave status \G;" | grep 'Running' | grep "Yes" |wc -l
;;
db_size)#库的大小
mysql -umysql -p123 -h 192.168.245.173 -D information_schema -e "select sum(DATA_LENGTH) from tables where table_schema='mysql'" |awk 'NR==2'
;;
tb_size)#表的大小
mysql -umysql -p123 -h 192.168.245.173 -D information_schema -e "select sum(DATA_LENGTH) from tables where table_schema='mysql' and table_name='user'" |awk 'NR==2'
;;
esac
2,在执行中会报(NULL)的错,创建用户,
MariaDB [(none)]> grant all on *.* to mysql@'localhost' identified by '123';
MariaDB [(none)]> flush privileges;
[root@kafka01 zabbix_agentd.d] vim chkc_mysql.conf
[root@kafka01 zabbix_agentd.d] cat chkc_mysql.conf
UserParameter=mysql_status[*],/etc/zabbix/scripts/check_mysql.sh $1
3.创建监控