MySQL基础:慢查询日志分析工具mysqldumpslow

MySQL自带一个perl的200多行的脚本名为mysqldumpslow,可对慢查询日志信息进行分析,使用非常便利,这篇文章对其使用进行介绍。

参数说明

参数选项 使用说明
-a 显示具体的数字和字符信息,而不是用N或者S代替
-n 将数字抽象显示为指定的数字个数
--debug 指定debug模式运行
-g 指定大小写不敏感的正则表达
–help 显示帮助信息
-h 指定MySQL主机名称用于选择慢查询日志(日志文件名称,缺省为*-slow.log)
-i 指定服务器示例名称用于选择慢查询日志
-l 显示总时间(包括lock锁定时间)
-r 逆序排序
-s 指定排序方式
-t 只显示指定数量的结果内容
–verbose Verbose模式

排序方式

使用-s指定排序方式,主要有如下四种方式:

  • l: 按锁定时间排序
  • r: 按结果行数排序
  • t: 按查询时间排序
  • c:按执行次数排序

a为平均,与上述参数结合可形成新的排序方式:

  • at:按平均查询时间排序(默认排序方式)
  • al:按平均锁定时间排序
  • ar:按平局结果行数排序

使用示例

可结合上述参数进行使用,比如如下使用示例

示例1:返回执行次数最高的top3

执行命令:mysqldumpslow -s c -t 5 /var/lib/mysql/`hostname`-slow.log

示例2: 返回结果行数最多的top3

执行命令:mysqldumpslow -s r -t 3 /var/lib/mysql/`hostname`-slow.log

示例3: 返回执行时间最长的top3

执行命令:mysqldumpslow -s t -t 3 /var/lib/mysql/`hostname`-slow.log

示例4: 返回执行时间最长的top3(字符和数字不使用N和S替代)

执行命令:mysqldumpslow -s t -a -t 3 /var/lib/mysql/`hostname`-slow.log

参考内容

https://dev.mysql.com/doc/refman/5.7/en/mysqldumpslow.html

猜你喜欢

转载自blog.csdn.net/liumiaocn/article/details/106643596
今日推荐