• 每天进步一点点!

文章分类

推荐网站

常用手册

mysql慢查询日志【原创】

<<返回

2013-05-17 15:50:44

慢查询日志简介    

mysql慢查询日志对于跟踪有问题的查询非常有用,可以分析出代码实现中耗费资源的sql语句,对我们程序的优化有很高的参考。

 

查看慢查询日志是否开启

使用下面命令查看:

 

show variables like '%slow%';

 


 

slow_query_log OFF说明并未开启慢查询。

sqlow_query_log_file 是慢查询日志的存放位置。

 

开启慢查询

方法一:

使用下面命令开启:

 

set global slow_query_log='ON';

 


 

查看慢查询的超时时间,即sql语句执行时间查过设置的这个时间将视为慢查询。

show variables like '%long_query_time%';

 

 

sql语句执行时间大于10秒就视为慢查询

可以用下面命令设置mysql慢查询的超时时间:

 

set long_query_time = 5;

 


 

方法2:

在mysql的配置文件中开启:

在mysql.cnf或mysql.ini中添加如下几行

 

 

log-slow-queries #开启慢查询
long_query_time=5 #记录超过的时间,默认为10s
log-slow-queries=/var/lib/mysql/slowquery.log #指定日志文件存放位置,可以为空,系统会给一个缺省的文件host_name-slow.log

 

 

测试慢查询

执行以下下面这条语句:

 

select benchmark(100000000,md5('hello world'));

 

benchmark是mysql的一个简单的测试工具,可以测试某种具体数据库的执行效率,可以为函数指定一个测试循环次数和被测试的表达式,表达式可以是任何标量表达式。

 

打开慢查询日志文件查看慢查询日志

 

 

用mysqldumpslow工具查看慢查询日志:

 

mysqldumpslow -a /usr/local/mysql/data/localhost-slow.log

 


 

怎样终止掉慢查询日志中的sql语句

首先用 show processlist;找到正在执行的慢查询的ID,然后kill ID,即可强制结束掉该条sql语句。

 

上一篇:Crontab的格式

下一篇:CSS Hack

文章评论

  • 暂无评论

发表评论

昵称:

内容:

发表评论