5种mysql日志分析工具比拼 | ||||||||||||||||||||||||||||||
摘自: linux.chinaitlab.com 被阅读次数: 79 | ||||||||||||||||||||||||||||||
由 yangyi 于 2009-08-13 22:18:05 提供 |
||||||||||||||||||||||||||||||
mysql slow log 是用来记录执行时间较长(超过long_query_time秒)的sql的一种日志工具. 启用 slow log 有两种启用方式: 1, 在my.cnf 里 通过 log-slow-queries[=file_name] 2, 在mysqld进程启动时,指定–log-slow-queries[=file_name]选项 比较的五款常用工具 mysqldumpslow, mysqlsla, myprofi, mysql-explain-slow-log, mysqllogfilter mysqldumpslow, mysql官方提供的慢查询日志分析工具. 输出图表如下: ![]() mysqlsla, hackmysql.com推出的一款日志分析工具(该网站还维护了 mysqlreport, mysqlidxchk 等比较实用的mysql工具) ![]() 格式说明如下: 总查询次数 (queries total), 去重后的sql数量 (unique) 输出报表的内容排序(sorted by) 最重大的慢sql统计信息, 包括 平均执行时间, 等待锁时间, 结果行的总数, 扫描的行总数. Count, sql的执行次数及占总的slow log数量的百分比. Time, 执行时间, 包括总时间, 平均时间, 最小, 最大时间, 时间占到总慢sql时间的百分比. 95% of Time, 去除最快和最慢的sql, 覆盖率占95%的sql的执行时间. Lock Time, 等待锁的时间. 95% of Lock , 95%的慢sql等待锁时间. Rows sent, 结果行统计数量, 包括平均, 最小, 最大数量. Rows examined, 扫描的行数量. Database, 属于哪个数据库 Users, 哪个用户,IP, 占到所有用户执行的sql百分比 Query abstract, 抽象后的sql语句 Query sample, sql语句 除了以上的输出, 官方还提供了很多定制化参数, 是一款不可多得的好工具. mysql-explain-slow-log, 德国人写的一个perl脚本. http://www.willamowius.de/mysql-tools.html ![]() ![]() http://code.google.com/p/mysql-log-filter/ ![]() 特色功能除了统计信息外, 还针对输出内容做了排版和格式化, 保证整体输出的简洁. 喜欢简洁报表的朋友, 推荐使用一下. myprofi, 纯php写的一个开源分析工具.项目在 sourceforge 上. http://myprofi.sourceforge.net/ ![]() 从整体输出样式来看, 比mysql-log-filter还要简洁. 省去了很多不必要的内容. 对于只想看sql语句及执行次数的用户来说, 比较推荐. 总结
|
原文地址:https://blog.csdn.net/samxx8/article/details/6868724