mysql 中的 slow log 是用来记录执行时间较长(超过 long_query_time 秒)的 sql 的一种日志工具。 启用 slow log 在 my.cnf 中设置
重启 MySQL 服务。 五款常用工具
mysqldumpslow mysql官方提供的慢查询日志分析工具。输出图表如下:
主要功能包括统计不同慢 sql 的
mysqlsla hackmysql.com 推出的一款日志分析工具(该网站还维护了 mysqlreport,mysqlidxchk 等比较实用的mysql 工具)。
整体来说,功能非常强大。输出的数据报表非常有利于分析慢查询的原因,包括执行频率、数据量、查询消耗等。 格式说明如下:
除了以上的输出,官方还提供了很多定制化参数,是一款不可多得的好工具。 mysql-explain-slow-log 德国人写的一个 perl 脚本。 http://www.willamowius.de/mysql-tools.html http://www.bt285.cn/content.php?id=1196863
功能上有点瑕疵。不仅把所有的 slow log 打印到屏幕上,而且统计也只有数量而已,不推荐使用。 mysql-log-filter google code 上找到的一个分析工具,提供了 python 和 php 两种可执行的脚本。 http://code.google.com/p/mysql-log-filter/
功能上比官方的 mysqldumpslow 多了查询时间的统计信息(平均、最大、累计),其他功能都与 mysqldumpslow 类似。 特色功能除了统计信息外,还针对输出内容做了排版和格式化,保证整体输出的简洁。喜欢简洁报表的朋友,推荐使用一下。 myprofi 纯 php 写的一个开源分析工具.项目在 sourceforge 上。 http://myprofi.sourceforge.net/
功能上,列出了总的慢查询次数和类型、去重后的 sql 语句、执行次数及其占总的 slow log 数量的百分比。从整体输出样式来看,比 mysql-log-filter 还要简洁,省去了很多不必要的内容。对于只想看 sql 语句及执行次数的用户来说,比较推荐。 总结:
(责任编辑:最模板) |