使用go语言写了一个采集mysql性能的小程序,通过SDK连接mysql数据库,采集数据库性能指标,同时采集远程数据库的性能,大家可试用一下,欢迎提出修改意见和建议
被监控端设置
监控下载:
Linux:
mymon_x86.tar.gz
mymon_x64.tar.gz
Windows:
mymon_windows_amd64.zip
Windows:
下载解压后放在c盘,修改agentd.conf文件,执行脚本路径为:
c:\mymon\mymon.exe重启agentd即可
Linux:
修改zabbix agentd配置文件(具体位置根据自身情况设置),添加key
vi /usr/local/zabbix/etc/zabbix_agentd.conf添加如下
#mysql
UserParameter=mysql.status,/usr/local/zabbix/bin/mysql/mymon $1 $2
添加好之后执行
mkdir -p /usr/local/zabbix/bin/mysql/cd /usr/local/zabbix/bin/mysql/wget tools/mymon_x64.tar.gztar zxvf mymon_x64.tar.gzchmod a+x mymon同时编辑cfg.json配置文件,设置要监控数据库的连接参数
vi /usr/local/zabbix/bin/mysql/cfg.json文件内容如下
{"mysql": { "username": "root", "password": "123456", "host": "localhost", "port": 3306 },"sever": { "log": "/tmp/mon.log" }}登录数据库的账号,密码等信息,log项目不用设置,默认即可
设置好之后重启zabixx agent
service zabbix-agent restartzabbix服务端设置
测试agent是否工作正常
/usr/local/bin/zabbix_get -s 192.168.7.186 -k mysql.status[GlobalStatus,Uptime]如果有一下回显,表示工作正常
[root@vm153 ~]# /usr/local/bin/zabbix_get -s 192.168.7.186 -k mysql.status[GlobalStatus,Uptime]12364726[root@vm153 ~]#导入模版:zabbix_mysql_templates.xml
并关联到主机
效果:
参数:
PS:可自行添加对应key可监控项目,模版自带了几种,脚本包括800多项目
具体更具key定义,括号内第一项为key类型,分GlobalStatus和GlobalVariables二种,后面的数值为在mysql里执行“SHOW /!50001 GLOBAL / STATUS”和“SHOW /!50001 GLOBAL / VARIABLES”,对应的key,注意有些数值为固定数值,有些key的类型为每秒速差,自行添加.