简单说明:
依据《编译安装MariaDB-10.1.30》在192.168.1.11上配置安装MariaDB
添加监控用的数据库账号:
mysql -uroot -pvincent
GRANT USAGE ON *.* TO 'zabbix_chk'@'localhost' IDENTIFIED BY 'zabbix_chk';
FLUSH PRIVILEGES;
exit
# 添加用于监控的数据库账号,该账号连接到MySQL库查询状态,不需要其他的库权限
修改配置文件,手动添加检测关键字:
rm -rf /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf
CMD=$(which mysql)
USER=zabbix_chk
PASS=zabbix_chk
HOST=localhost
cd /etc/zabbix/zabbix_agentd.d
cat >userparameter_mysql.conf<<EOF
UserParameter=mysql.status[*],echo "show global status where Variable_name='\$1';" | ${CMD} -u${USER} -p${PASS} -h${HOST} -N | 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'");" | ${CMD} -u${USER} -p${PASS} -h${HOST} -N
UserParameter=mysql.ping,${CMD}admin -u${USER} -p${PASS} -h${HOST} ping | grep -c alive
UserParameter=mysql.version,${CMD} -V
EOF
/etc/init.d/zabbix-agent restart
使用Server端,测试:
AGENT_IP=192.168.1.11
AGENT_PORT=10050
zabbix_get -s ${AGENT_IP} -p ${AGENT_PORT} -k mysql.ping
zabbix_get -s ${AGENT_IP} -p ${AGENT_PORT} -k mysql.version
zabbix_get -s ${AGENT_IP} -p ${AGENT_PORT} -k mysql.status[Com_begin]
zabbix_get -s ${AGENT_IP} -p ${AGENT_PORT} -k mysql.status[Com_commit]
zabbix_get -s ${AGENT_IP} -p ${AGENT_PORT} -k mysql.status[Com_rollback]
zabbix_get -s ${AGENT_IP} -p ${AGENT_PORT} -k mysql.status[Com_select]
zabbix_get -s ${AGENT_IP} -p ${AGENT_PORT} -k mysql.status[Com_insert]
zabbix_get -s ${AGENT_IP} -p ${AGENT_PORT} -k mysql.status[Com_update]
zabbix_get -s ${AGENT_IP} -p ${AGENT_PORT} -k mysql.status[Com_delete]
zabbix_get -s ${AGENT_IP} -p ${AGENT_PORT} -k mysql.status[Bytes_received]
zabbix_get -s ${AGENT_IP} -p ${AGENT_PORT} -k mysql.status[Bytes_sent]
zabbix_get -s ${AGENT_IP} -p ${AGENT_PORT} -k mysql.status[Questions]
zabbix_get -s ${AGENT_IP} -p ${AGENT_PORT} -k mysql.status[Slow_queries]
zabbix_get -s ${AGENT_IP} -p ${AGENT_PORT} -k mysql.status[Uptime]
网页添加MySQL监控:
[TOC]