Zabbix之监控Mysql
1. zabbix监控mysql基本性能
1. 在被监控的服务器上,编写脚本
UserParameter=mysql.status[*],/server/mysql/bin/mysql -uzabbix_monitor -e "show global status where Variable_name='$1';" | grep "$1" |awk '{print $$2}'
UserParameter=mysql.size[*],echo "select sum($(case "$3" in both|"") echo "data_length+index_length";; data|index) echo "$3_length";; free) echo "data_free";; esac)) from information_schema.tables$([[ "$1" = "all" || ! "$1" ]] || echo " where table_schema='$1'")$([[ "$2" = "all" || ! "$2" ]] || echo "and table_name='$2'");" | HOME=/usr/local/zabbix/ /server/mysql/bin/mysql -uzabbix_monitor -N
UserParameter=mysql.ping,HOME=/usr/local/zabbix/ /server/mysql/bin/mysqladmin -uzabbix_monitor ping | grep -c alive
UserParameter=mysql.version,/usr/local/mysql/bin/mysql -V
2. 在zabbix_agentd.conf文件中,添加内容:
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/userparameter_mysql.conf
3. 创建模板,监控项,触发器,图形等,最后的效果如下
2. zabbix监控mysql主从复制
1. 在被监控的服务器上,编写脚本
UserParameter=db_delay,mysql -uroot -p'123' -e "show slave status\G" 2>/dev/null|egrep 'Seconds_Behind_Master'|awk '{print $2}' 检查是否延迟
UserParameter=db_status,mysql -uroot -p'123' -e "show slave status\G" 2>/dev/null|egrep 'Slave_IO_Running|Slave_SQL_Running'|grep -v 'Slave_SQL_Running_State'|awk '{print $NF}'|grep -c Yes 检查主从复制是否正常
2. 在zabbix_agentd.conf文件中,添加内容:
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/db_status.conf
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/db_delay.conf
3. 创建模板,监控项,触发器,图形等,最后的效果如下

浙公网安备 33010602011771号