先决条件:
首先你需要安装 zabbix servers 及 zabbix-agentd 端:
《zabbix servers 3.4 源代码编译安装》
《centos 7 zabbix agent 客户端源码编译安装配置》
1.配置 userparameter_mysql.conf
zabbix源码中包含了 userparameter_mysql.conf 配置文件,只需要将其拷贝到zabbix_agentd.conf.d目录下: $ find / -name userparameter_mysql.conf $ cd /tmp/zabbix-3.4.2/conf/zabbix_agentd/ $ cp userparameter_mysql.conf /usr/local/zabbix/etc/zabbix_agentd.conf.d/
2.修改 zabbix_agentd.conf
因为我们将userparameter_mysql.conf文件放在了zabbix_agentd.conf.d目录,所以需要取消下面注释,这样zabbix agent才能够加载此文件 $ vim /usr/local/zabbix/etc/zabbix_agentd.conf ... include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf ...
注意:若 systemctl zabbix-agent.service 单元文件中已经加载此配置文件/路径,此步骤可以忽略。
3.创建监控 mariadb(mysql) 用户信息
mariadb [(none)]> grant select on *.* to 'zabbix'@'localhost' identified by 'renwolecom'; mariadb [(none)]> flush privileges; mariadb [(none)]> exit bye
注意:mysql用户权限可根据需求设置,可参考《linux mariadb(mysql)数据库更改用户权限》。
4.创建 .my.cnf 文件,添加 mariadb(mysql) 用户信息
$ vim /usr/local/zabbix/etc/.my.cnf # zabbix agent [mysql] host=localhost user=zabbix password="renwolecom" socket=/tmp/mysql.sock [mysqladmin] host=localhost user=zabbix password="renwolecom" socket=/tmp/mysql.sock
5.修改 userparameter_mysql.conf
修改后的内容如下:
$ cd /usr/local/zabbix/etc/zabbix_agentd.conf.d/ $ egrep -v "(^#|^$)" userparameter_mysql.conf userparameter=mysql.status[*],echo "show global status where variable_name='$1';" | home=/usr/local/zabbix/etc/ /usr/local/mysql/bin/mysql -n | awk '{print $$2}' userparameter=mysql.size[*],bash -c '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/etc mysql -n' userparameter=mysql.ping,home=/usr/local/zabbix/etc/ /usr/local/mysql/bin/mysqladmin ping | grep -c alive userparameter=mysql.version,/usr/local/mysql/bin/mysql -v userparameter=mysql.vars[*],echo "show variables where variable_name='$1';" | home=/usr/local/zabbix/etc/ /usr/local/mysql/bin/mysql -n | awk '{print $$2}'
注:以上内容请注意相关绝对路径。
6.重启 zabbix-agent 服务
$ systemctl restart zabbix-agent
最后在 zabbix ui界面中添加mysql监控模板即可。
以上就是详解:zabbix 3.4 监控 mariadb 数据库性能的详细内容,更多请关注代码网其它相关文章!
发表评论