mysql 慢查询日志开启与mysqldumpslow分析

一、Mysql慢查询日志开启

慢查询日志常用语句

#查看慢查询时间

show variables like 'long_query_time';

#查看慢查询日志输出方式

show variables like '%output%'

#设置慢查询时间

set long_query_time = 2;

#设置开启状态

set global slow_query_log='ON'; 

#设置慢查询日志存储位置

set global slow_query_log_file='/usr/local/mysql/data/slow.log';

#设置慢查询日志输出方式

set global log_output='FILE';     #文件

set global log_output='TABLE'     #表



二、mysqldumpSlow 安装及应用分析慢查询日志


第一步:安装mysql 

详情:mysqldumpslow 的使用需要本地安装mysql,在mysql     bin目录下可以找到   mysqldumpslow.pl 文件


第二步:mysqldumpslow 是无法直接运行的。找出问题

问题答案:没有Perl运行环境,安装perl运行环境

    1)perl下载安装地址 



 2)安装perl环境,默认安装就可以,一直下一步。


第三步:采用mysqldumpslow 来进行慢查询日志分析

 

mysqldumpslow应用:

命令窗口下进入安装的Perl环境位置bin目录 



应用语法:

perl mysqldumpslow的路径\mysqldumpslow.pl+mysqldumpslow命令 +slow.log的路径+输出的地方

语法运行案例:

C:\Strawberry\perl\bin>perl C:\MySQL\mysql-5.7.20-winx64\bin\mysqldumpslow.pl -r -s c -a  -t 100 C:\Users\Ficent\Desktop\慢查询日志\mysql-slowquery-6-7.log

案例解析:



mysqldumpslow 命令详情

--help    输出帮助信息

-v           输出详细信息 
-d          调试
-s          按照什么排序,默认是'at',显示顺序为倒序
              al: 平均锁表时间

ar: 平均结果行数
                at: 平均查询时间
                 c: 次数
                 l: 锁表时间
                 r: 总结果行数
                 t: 总查询时间  
 -r          正序排序,即从小到大排序

-t NUM       限制显示的条数

-a           显示出数字和字符串,默认数字为 N 字符串为 'S'
-g PATTERN   过滤字符串,后接正则表达式,如'10$' 以10为结尾的条件


运行结果:


结果含义:

count:慢查询出现几次

time:最大花费时间 

time后的()内为总共运行时间

Lock:锁表时间

rows:返回结果数

rows后的()内为扫描的行总数



猜你喜欢

转载自blog.csdn.net/Mark_Chao/article/details/81006523