寻觅生命中的那一片浅草......

MySQL的监控方法

mysql的监控方法大致分为两类:

1.连接到mysql数据库内部,使用show status,show variables,flush status 来查看mysql的各种性能指标(nagios就是使用这种办法),输出到特定文件中,然后再取出来显示到页面。这里必须一个*.conf类似的文件用于保存数据库的用户名和密码等相关信息。

2. 直接使用mysqladmin查看其性能指标,具体体现到zabbix中就是在zabbix_agentd.conf文件中使用UserParameter做具体的每个指标,例如:

UserParameter=mysql.uptime,mysqladmin -uroot status|cut -f2 -d”:”|cut -f1 -d”T”

这里的”mysql.uptime”就是我们在页面上需要输入的”key”,而逗号后面的则是这个key执行的命令。

对于mysqladmin我们这里用到了两个参数,status,extended-status,可以取到mysql的大部分指标,具体mysqladmin的用法可以参看如下链接:MySQL “mysqladmin”使用及详解

提取性能指标:

1. 对于status的指标,直接使用cut命令(如上面代码中所示)切取需要的值,由于status取到的值不是很多,用这个方法省力好用。
2. 对于extend-status取到的性能指标,这里面的性能指标实在太多,这里考虑对于取到的所有性能先用grep命令过滤那些不需要的指标(即只留下特定的指标),然后再针对需要的数值使用cut命令来进行切取。 具体的命令如下:

mysqladmin -uroot -p123 extended-status |grep ‘| Threads_running |’ |cut -f3 -d ‘|’

下面对这个命令解释一下:

* mysqladmin -uroot -p123 extended-status 是用来显示所有的性能指标,-u和-p是数据库的用户名和密码。
*  |grep ‘| Threads_running                   |’  是用来筛选出只在有“Theads_running”行的内容,其余的内容全部抛弃,这里需要注意的是’    ‘里面的内容一定要和上一步列出来的内容完全一致,要不容易出现匹配错误,接着再取值就有可能错误。
*  |cut -f3 -d ‘|’   是在刚刚用grep筛选出来的内容基础上进行切去数据,其中-f3的意思是说第三个字符段的数据,而-d’|’是说明用这个字符段是用“|”分割的。

转载自:http://www-2w.blog.163.com/blog/static/97931518200811433331271/

尚无评论

发表评论

2024年四月
« 5月    
1234567
891011121314
15161718192021
22232425262728
2930