代码改变世界

关于mysql的监控问题(转)

2012-05-14 17:50  myjava2  阅读(207)  评论(0编辑  收藏  举报

今儿突然间被问到关于mysql数据库服务器的监控问题,自己也没有答出来什么东西,就是仅仅知道一个可视化的界面mysql administrator这个工具。其他的就不懂了,下来以后果断查资料。下面是自己查到的资料,给大家分享下共同学习。

http://www.iteye.com/topic/600627

无论是DBA或是SA,监控的目标都很明确,无外乎: 
1.快速的得到Mysql过去一段时间或者当前运行的状态 
2.因硬件升级或者系统配置的改变而诊断对Mysql数据库性能影响 
3.在Mysql数据库系统出现故障要能够及时收到告警 
4.为日后编写运维报告提供各项数据指标供分析 
5.…… 

自从Mysql数据库系统启动并且提供服务,Mysql内部自身的一套“计数器”就开始工作,可以通过 
Show Global Status , Show global variables ,Show full processlist 
得到Mysql数据库系统当前各种系统变量和状态 ,并且后文介绍个各种监控工具几乎都是对这三个指令的输出 
进行数据的计算和统计分析。 


 

1.jpg 


 

2.jpg 



这里要提到的是mysqladmin这个Mysql自带的工具,除了用来做各种管理工作,还可以用来做监控 
例如:每个10秒输出一次mysql的状态信息 

#./mysqladmin -i 10 extended status 


 

3.jpg 



下面进入文章正题 

一。GUI 类监控工具 

1.MySQL administrator 

Mysql公司发布管理工具,安装和使用都很方便 

可以对Mysql 的状态,变量和进程监控,并且有简单图形绘制输出。 


2.Cacti 

用它来做系统监控的同仁相信很多,目前各种插件数量也很多,足以满足绝大多数公司监控要求。 
这里要说的是Mysql监控插件teMySQL_cacti,能够对mysql做比较全面的监控, 
但是我发现这个插件很长时间没有更新了。 


 


4.jpg 


3.Mysql-cacti-templates 

Google cacti : http://code.google.com/p/mysql-cacti-templates/ 
这个应该说是teMySQL_cacti的升级和改进版本,项目发起人是主编《High Performance MySQL, Second Edition.》的作者 
他的主页 http://www.xaprb.com/blog/ 
本人推荐使用,功能强大丰富。 


 


5.jpg 



4.Nagios 
这个天天使用,没啥好说的,可以自己写监控脚本来监控,和cacti结合使用是不错的搭配! 

5.Munin 
Munin是一款和cacti类似的系统监控工具,有兴趣的可以去研究研究 
http://munin.projects.linpro.no/ ,这里不多说 

6.Zenoss 

测试过一次,用的不多,不做什么评价 

7.MySQL Enterprise Monitor 
Mysql 旗舰付费产品,功能丰富 


 

6.jpg 



详细信息 http://www.mysql.com/products/enterprise/monitor.html 
能够监控,报警,绘图,并提供性能优化和建议,集众多监控指标于一身,好是好,可以要花钱的哦 
有兴趣的可以去download 30天的试用版本体验。 


二。文字模式的监控工具 
我了解并使用过的有 

1.mytop 

类似linux下top命令的输入 
http://jeremy.zawodny.com/mysql/mytop/ 


 

7.jpg 



2.mtstat-mysql 
http://pypi.python.org/pypi/mtstat-mysql/0.7.3.3 

3.mysqlreport 
http://hackmysql.com/mysqlreport 
看我写的这篇文章 
用mysqlreport监控并输出mysql状态值  http://www.askwan.com/read.php?44 

4.innotop 

这个针对innodb存储引擎数据库的监控,功能丰富 
http://www.xaprb.com/blog/2006/07/02/innotop-mysql-innodb-monitor/ 


 

8.jpg 



三。自己写脚本监控 
参看我以前写过一篇文章 
http://www.askwan.com/read.php?96 
方法和原理一样,可以定制需求 



 

1.png 


以上各种工具和方法各有自己特色,如何选择,可以根据需求和自己的情况定,目的只有一个,效益最大化!