首页 > 数据库技术 > 详细

mysql慢查询日志

时间:2017-08-13 13:59:47      阅读:307      评论:0      收藏:0      [点我收藏+]

mysql慢查询日志可以记录查询时间过长的sql,对于性能问题定位十分重要,本文旨在介绍慢查询日志管理使用。

参数

1、slow_query_log:ON表示慢查询日志开启,OFF表示慢查询日志关闭;

2、slow_query_log_file:慢查询日志文件;

3、long_query_time:表示执行时间超过多少秒的sql记录到慢查询日志;

4、log_queries_not_using_indexes:ON表示慢查询日志会记录执行过的没有索引的sql,OFF表示不会记录;

5、log_throttle_queries_not_using_indexes:限制每分钟记录的无索引sql数量;

6、log_output:慢查询日志记录方式,FILE表示记录文件,TABLE表示记录表,FILE/TABLE表示同时记录文件,表。

技术分享

实战

set global log_output=FILE,TABLE;
set global long_query_time=2;
create database coshaho003;
use coshaho003;
show variables like long_query_time;
select sleep(3);
select * from mysql.slow_log;

技术分享

这里需要注意的是,执行了set global long_query_time=2;后,需要新建数据库才能生效。

慢查询日志信息如下:

Time                 Id Command    Argument
# Time: 2017-08-13T04:48:11.591942Z
# User@Host: root[root] @ localhost [127.0.0.1]  Id:     4
# Query_time: 3.015729  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
use coshaho001;
SET timestamp=1502599691;
select sleep(3)
LIMIT 0, 1000;
# Time: 2017-08-13T04:51:41.790726Z
# User@Host: root[root] @ localhost [127.0.0.1]  Id:     4
# Query_time: 3.000108  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
use coshaho003;
SET timestamp=1502599901;
select sleep(3)
LIMIT 0, 1000;

 

mysql慢查询日志

原文:http://www.cnblogs.com/coshaho/p/7353086.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!