MySQL 慢速查询日志包含有关需要很长时间执行的查询的信息(请参阅 第 5.4.5 节,“慢速查询日志”)。 mysqldumpslow解析 MySQL 慢查询日志文件并汇总其内容。
通常,mysqldumpslow将相似的查询分组,除了数字和字符串数据值的特定值。它在显示摘要输出时“抽象”这些值
。要修改值抽象行为,请使用
和选项。
N
'S'
-a
-n
像这样调用mysqldumpslow:
mysqldumpslow [options] [log_file ...]
没有给出选项的示例输出:
Reading mysql slow query log from /usr/local/mysql/data/mysqld80-slow.log
Count: 1 Time=4.32s (4s) Lock=0.00s (0s) Rows=0.0 (0), root[root]@localhost
insert into t2 select * from t1
Count: 3 Time=2.53s (7s) Lock=0.00s (0s) Rows=0.0 (0), root[root]@localhost
insert into t2 select * from t1 limit N
Count: 3 Time=2.13s (6s) Lock=0.00s (0s) Rows=0.0 (0), root[root]@localhost
insert into t1 select * from t1
mysqldumpslow支持以下选项。
显示帮助信息并退出。
不要将所有数字
N
和字符串抽象为'S'
。--debug
,-d
在调试模式下运行。
仅当 MySQL 是使用
WITH_DEBUG
. Oracle 提供的 MySQL 发布二进制文件不是 使用此选项构建的。只考虑匹配(grep样式)模式的查询。
文件名的 MySQL 服务器的主机
*-slow.log
名。该值可以包含通配符。默认为*
(全部匹配)。服务器实例的名称(如果使用 mysql.server启动脚本)。
不要从总时间中减去锁定时间。
名称中至少包含
N
数字的抽象数字。反转排序顺序。
如何排序输出。的值
sort_type
应从以下列表中选择:t
,at
: 按查询时间或平均查询时间排序l
,al
: 按锁定时间或平均锁定时间排序r
,ar
: 按发送的行数或发送的平均行数排序c
: 按次数排序
默认情况下,mysqldumpslow按平均查询时间排序(相当于
-s at
)。仅显示输出中的第一个
N
查询。--verbose
,-v
详细模式。打印有关程序功能的更多信息。