>데이터 베이스 >MySQL 튜토리얼 >常用的mysql slowquery日志分析工具_MySQL

常用的mysql slowquery日志分析工具_MySQL

WBOY
WBOY원래의
2016-06-01 13:30:281016검색

bitsCN.com

常用的mysql slowquery日志分析工具

 

有一篇不错的关于mysql优化的文章,无非都是从硬件,SQL语句方面进行入手,当然这里面最重要的是 sql 语句了,所以我们要经常 trace 这些 sql 语句。

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

 

-----------------------

 

1、mysqldumpslow

mysql官方提供的慢查询日志分析工具. 

主要功能是, 统计不同慢sql的

出现次数(Count), 

执行最长时间(Time), 

累计总耗费时间(Time), 

等待锁的时间(Lock), 

发送给客户端的行总数(Rows), 

扫描的行总数(Rows), 

用户以及sql语句本身(抽象了一下格式, 比如 limit 1, 20 用 limit N,N 表示).

 

 

2、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语句

bitsCN.com
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.