Mysql mysqldumpslow命令详解

首先我们要了解:

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

  2.慢查询日志记录的是记录执行时长超过阈值(即配置文件中long_query_time的值,这个值我们可以根据项目的情况自行定义)的sql语句日志。

一、在使用MysqlDumpSlow工具之前的准备工作:

1.查询是否开启慢查询日志及日志文件的目录网址:yii666.com

show variables like '%slow_query_log%';

结果如下:默认的慢查询日志是关闭状态。(推荐:需要调优的时候才将此功能打开,日常使用会加大对mysql服务的压力。)

Mysql mysqldumpslow命令详解

 2.开启慢查询并设置阈值

set global slow_query_log=1;#开启慢查询,如果已开启可忽略
show variables like 'long_query_time%'; #查询慢查询的阈值,如果不满足需求,可以自行更改
set global long_query_time=3; #设置慢查询阈值,根据需求调整

3.补充:调优也可将没有使用索引的sql语句加入到日志中文章来源地址https://www.yii666.com/article/758342.html

show variables like 'log_queries_not_using_indexes'; #查询是否开启此功能
set global log_queries_not_using_indexes=1;#开启将未使用索引的sql写入日志功能

二、MysqlDumpSlow工具的使用

1.操作命令文章地址https://www.yii666.com/article/758342.html

 /path/mysqldumpslow -s c -t 10 /database/mysql/slow-log

这会输出记录次数最多的10条SQL语句。

其中:网址:yii666.com<

 -s, 是sort的意思,表示按照何种方式排序,c、t、l、r分别是按照记录次数、时间、查询时间、返回的记录数来排序,ac、at、al、ar,表示相应的倒序;
-t, 是top n的意思,即为返回前面多少条的数据;
-g, 是grep的意思,后边可以写一个正则匹配模式,大小写不敏感的;

比如:

 /path/mysqldumpslow -s r -t 10 /database/mysql/slow-log
得到返回记录集最多的10个查询。
/path/mysqldumpslow -s t -t 10 -g “left join” /database/mysql/slow-log
得到按照时间排序的前10条里面含有左连接的查询语句。

输出图表如下:

Mysql mysqldumpslow命令详解文章来源地址:https://www.yii666.com/article/758342.html

字段:

出现次数(Count),
执行最长时间(Time),
累计总耗费时间(Time),
等待锁的时间(Lock),
发送给客户端的行总数(Rows),
扫描的行总数(Rows),
用户以及sql语句本身(抽象了一下格式, 比如 limit 1, 20 用 limit N,N 表示).

版权声明:本文内容来源于网络,版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。文本页已经标记具体来源原文地址,请点击原文查看来源网址,站内文章以及资源内容站长不承诺其正确性,如侵犯了您的权益,请联系站长如有侵权请联系站长,将立刻删除

Mysql mysqldumpslow命令详解-相关文章

  1. Mysql mysqldumpslow命令详解

  2. Linux oracle 11g r2 安装前检查及安装

  3. 如何检查linux 下是否安装java(jdk)环境

  4. Linux下软件安装,卸载,管理

  5. Go在linux下的安装

  6. Linux(CentOs)下安装Phantomjs + Casperjs

  7. Linux RedHat无法安装软件问题(No package gcc available. Nothing to do)

  8. linux telnet服务安装与配置

    关闭防火墙:service iptabls stop            chkconfig iptabls off1、安装telnet服务[root@rheltest1 ~]# rpm -qa |grep telnet   //检查是否安装这相关软件包telnet-0.17-47.el6.x86_64telnet-server-0.17-47.el6.x86_64如果未安装,配置YUM源,使用yum install telnet telnet-server命令安装2、开启telnet服务(因为tel

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信图片_20190322181744_03.jpg

微信扫一扫打赏

请作者喝杯咖啡吧~

支付宝扫一扫领取红包,优惠每天领

二维码1

zhifubaohongbao.png

二维码2

zhifubaohongbao2.png