快速开启MySQL慢日志查询的方法

原创 2012年03月30日 09:17:50

MySQL中使用mysqldumpslow命令可以非常明确的得到各种我们需要的查询语句,对MySQL查询语句的监控、分析、优化起到非常大的帮助。

AD:

MySQL慢日志查询对于很多刚接触MySQL数据的新人来说比较陌生,下面就为您介绍MySQL慢日志查询的用法和好处,供您参考。

mysql有一个功能就是可以log下来运行的比较慢的sql语句,默认是没有这个log的

打开 my.ini ,找到 [mysqld] 在其下面添加

long_query_time = 2
log-slow-queries = D:/mysql/logs/slow.log #设置把日志写在那里,可以为空,系统会给一个缺省的文件
#log-slow-queries = /var/youpath/slow.log linux下host_name-slow.log
log-queries-not-using-indexes

long_query_time 是指执行超过多长时间(单位是秒)的sql会被记录下来,这里设置的是2秒。
log-slow-queries 设置日志所在位置,可以为空,系统会给一个缺省的文件host_name-slow.log,生成的日志就在mysql的data目录下
log-queries-not-using-indexes 就是字面意思,记录下没有使用索引的query。

以下是mysqldumpslow常用参数说明,详细的可应用mysqldumpslow -help查询。

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

接下来就是用mysql自带的慢查询工具mysqldumpslow分析了(mysql的bin目录下
),我这里的日志文件名字是host-slow.log。

列出记录次数最多的10个sql语句

mysqldumpslow -s c -t 10 host-slow.log

列出返回记录集最多的10个sql语句

mysqldumpslow -s r -t 10 host-slow.log

按照时间返回前10条里面含有左连接的sql语句

mysqldumpslow -s t -t 10 -g "left join" host-slow.log

使用mysqldumpslow命令可以非常明确的得到各种我们需要的查询语句,对MySQL查询语句的监控、分析、优化起到非常大的帮助。

mysql 优化之开启慢查询并分析原因

开启mysql慢查询日志 查看配置:
  • haiqiao_2010
  • haiqiao_2010
  • 2014年05月06日 16:49
  • 18166

mysql开启慢查询日志和profile

mysql慢查询日志对于跟踪有问题的查询非常有用,可以分析出当前程序里有很耗费资源的sql语句,以便后期跟踪优化。mysqld在语句执行完并且所有锁释放后记入慢查询日志。...
  • tianwei7518
  • tianwei7518
  • 2016年12月01日 08:54
  • 1108

MySQL优化:启用慢查询日志记录

在前面的文章中,我们介绍了如何使用EXPLAIN来获取SELECT语句的执行计划信息,从而实现MySQL语句查询性能的优化。此外,我们还可以让MySQL记录下那些执行时间特别长的SQL语句,以便于我们...
  • wangshfa
  • wangshfa
  • 2015年04月13日 13:11
  • 648

MYSQL 5.7.9 开启慢查询日志

mysql 用户权限问题...
  • ZengMuAnSha
  • ZengMuAnSha
  • 2016年03月17日 15:27
  • 2847

mysql 5.6 打开慢查询

mysql版本: [root@mysql_multi ~]# vi /etc/my.cnf 【mysqld3307】 long_query_time=1 #slow_query_log s...
  • ahzxj2012
  • ahzxj2012
  • 2015年11月05日 16:51
  • 1890

MySQL系列之三:慢查询日志及分析

一、打开慢查询日志配置参数,统计有问题的SQL[mysqld] … … slow_query_log log-short-format slow_query_log_file=...
  • ydyang1126
  • ydyang1126
  • 2017年04月08日 17:48
  • 267

windows下mysql慢查询开启

window下MySQL慢查询配置 1. 慢查询有什么用? 它能记录下所有执行超过long_query_time时间的SQL语句, 帮你找到执行慢的SQL, 方便我们对这些SQL进行优化. 2. 如何...
  • tiantianw
  • tiantianw
  • 2016年11月25日 15:07
  • 232

学会读懂 MySql 的慢查询日志

在前边的博客《何时、如何开启 MySql 日志?》中,我们了解到了如何启用 MySql 的慢查询日志。今天我们来看一下如何去读懂这些慢查询日志。在跟踪慢查询日志之前,首先你得保证最少发生过一次慢查询。...
  • defonds
  • defonds
  • 2015年07月14日 15:21
  • 2605

mysql 慢日志开启 及explain 分析sql语句

mysql 慢日志开启  在默认情况下,mysql是不会记录慢查询,需要我们指定启用慢查询日志,才会把执行速度慢的sql语句放入到日志. 启动方式: {%bin%}/mysqld.exe  --s...
  • u011341352
  • u011341352
  • 2015年08月31日 16:10
  • 389

快速开启MySQL慢日志查询的方法

MySQL慢日志查询对于很多刚接触MySQL数据的新人来说比较陌生,下面就为您介绍MySQL慢日志查询的用法和好处,供您参考。   mysql有一个功能就是可以log下来运行的比较慢的sql语句,...
  • moqiang02
  • moqiang02
  • 2014年06月24日 17:30
  • 480
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:快速开启MySQL慢日志查询的方法
举报原因:
原因补充:

(最多只允许输入30个字)