mysql版本号是mysql5.6.22。安装环境windows7。

1.使用该查询日志能够找到有效率问题的sql语句。并记录下来,进行监控。

能够使用例如以下语句查询和设置慢查询日志

(1) 查看慢查询日志是否开启

SHOW VARIABLES LIKE '%show_query_log%'; 或是 SHOW VARIABLES LIKE '%show_query_log%'\G (mysql命令行中使用)

查询结果例如以下

Variable_name: slow_query_log

        Value: OFF

上边Value表示未开启

Variable_name: slow_query_log_file

        Value: D:\ProgramFiles\MySQL5.6.22\mysql_master\data\LHY-slow.log

上边Value表示日志存放的路径

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlhbmd6aTQ0NTQ=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

设置开启状态:

set global slow_query_log = on;

(2) 查看未使用索引的查询日志是否开启

SHOW VARIABLES LIKE '%log_queries_not_using_indexes%'; 或是 SHOW VARIABLES LIKE '%log_queries_not_using_indexes%'\G (mysql命令行中使用)

查询结果例如以下

Variable_name: log_queries_not_using_indexes

        Value: OFF

上边Value表示未开启

设置开启状态:

set global log_queries_not_using_indexes = on;

(3) 查看超过设定时间的查询日志

SHOW VARIABLES LIKE '%long_query_time%'; 或是 SHOW VARIABLES LIKE '%long_query_time%'\G (mysql命令行中使用)

查询结果例如以下:

Variable_name: long_query_time

        Value: 10.000000

上边value:10s表示记录运行时间超过10秒的sql

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlhbmd6aTQ0NTQ=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

设置运行时间为1s

set global long_query_time = 1;

exit;

注意1:改动运行之间之后要退出又一次登录才会起作用.

注意2:设置时间过短导致日志记录过多会非常快将磁盘空间沾满,所以应该定期运行磁盘清理,这里设置为1是为了查看运行效果,生产环境中须要自己设置.





以上三个步骤运行完毕之后,从数据库中运行不论什么sql语句就都会被记录到日志中,能够到第一步中那个日志查看日志信息.





以上设置是在控制台处理的,当数据库重新启动之后,该设置即失效;

长期有效的方式是在mysql安装文件夹下找到my.ini文件,若是没有该文件,仅仅有mysql-default.ini文件

那么就将该文件备份,然后改名为mysql.ini。然后在该文件里[mysqld]下边加入例如以下的配置信息就可以。

slow_query_log=on

slow_query_log_file=D:/ProgramFiles/MySQL5.6.22/mysql_master/data/LHY-slow.log

log_queries_not_using_indexes=on

long_query_time=1

2.存储格式



# Time: 150401 11:24:27

# User@Host: root[root] @ localhost [127.0.0.1]  Id:     7

# Query_time: 0.034002  Lock_time: 0.000000 Rows_sent: 3  Rows_examined: 3

use libu;

SET timestamp=1427858667;

select * from aaa;




分析例如以下:

(1) Time: 运行时间

(2) User@Host: 运行sql的主机信息

(3) Query_time: sql的运行信息,Lock_time: 锁定时间, Rows_sent: 发送(结果)行数, Rows_examined:扫描的行数

(4) timestamp: 运行时间

(5) select * from aaa; : 查询语句内容

3.慢查询日志分析工具

    5种工具: mysqldumpslow,mysqlsla,myprofi,mysql-explain-slow-log,mysqllogfilter

mysqldumpslow mysql自带的分析工具

  致歉:本人眼下还未找到这些工具在window上使用的方式。若是哪位大神有相关的教程,请@我,谢谢!。。

mysql慢查询日志开启和存储格式的更多相关文章

  1. MySql慢查询日志——开启/查看/删除

    1,开启慢查询日志 修改mysql.ini文件,加入如下配置: [mysqld] log-slow-queries=H:\mysql_log\slow_query.log long-query-tim ...

  2. linux上开启和分析mysql慢查询日志

    本人qq群也有许多的技术文档,希望可以为你提供一些帮助(非技术的勿加). QQ群:   281442983 (点击链接加入群:http://jq.qq.com/?_wv=1027&k=29Lo ...

  3. MySQL慢查询日志如何开启以及分析

    1.MySQL慢查询日志是什么 (1)MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录MySQL中查询时间超过(大于)设置阈值(long_query_time)的语句,记录到慢查询日志 ...

  4. mysql慢查询日志功能的使用

    作用:mysql慢查询日志可监控有效率问题的SQL .. 一.开启mysql慢查询日志功能 1.查看是否开启 未使用索引的SQL记录日志查询 mysql> show variables like ...

  5. mysql 慢查询日志 mysqldumpslow 工具

    文章来源:https://www.cnblogs.com/hello-tl/p/9229676.html 1.使用Mysql慢查询日志配置 查看慢查询日志是否开启 OFF关闭 ON开启 show va ...

  6. MySQL慢查询日志

    实验环境: OS X EI Captian + MySQL 5.7 一.配置MySQL自动记录慢查询日志 查看变量,也就是配置信息 show (global) variables like '%slo ...

  7. MySQL慢查询日志释疑总结

      之前写了一篇"MySQL慢查询日志总结",总结了一些MySQL慢查询日志常用的相关知识,这里总结一下在工作当中遇到关于MySQL慢查询日志的相关细节问题,有些是释疑或自己有疑惑 ...

  8. 企业级中带你ELK如何实时收集分析Mysql慢查询日志

    什么是Mysql慢查询日志? 当SQL语句执行时间超过设定的阈值时,便于记录到指定的日志文件中或者表中,所有记录称之为慢查询日志 为什么要收集Mysql慢查询日志? 数据库在运行期间,可能会存在这很多 ...

  9. MySQL慢查询日志相关的文件配置和使用。

    MySQL慢查询日志提供了超过指定时间阈值的查询信息,为性能优化提供了主要的参考依据,是一个非常实用的功能,MySQL慢查询日志的开启和配置非常简单,可以指定记录的文件(或者表),超过的时间阈值等就可 ...

随机推荐

  1. pip安装注意事项

    pip源 清华:https://pypi.tuna.tsinghua.edu.cn/simple 阿里云:http://mirrors.aliyun.com/pypi/simple/ 中国科技大学 h ...

  2. 马老师 Linux基础入门

    总线(Bus)是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束, 按照计算机所传输的信息种类,计算机的总线可以划分为数据总线.地址总线和控制总线,分别用来传输数据.数据地址和控 ...

  3. java提高篇之详解内部类

    可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类是一个非常有用的特性但又比较难理解使用的特性(鄙人到现在都没有怎么使用过内部类,对内部类也只是略知一二). 第一次见面 内部类我们从外面 ...

  4. WebApi和MVC的区别

    使用上区分,mvc主要用于建站,web api主要用于构建http服务,当然你非要用mvc来构建Uri式的Api也行,不过显然是没有这个必要的,一个不恰当的比喻就像是你也可以玩破解版的单机游戏,也可以 ...

  5. Python maketrans() 方法

    描述 Python maketrans() 方法用于给 translate() 方法创建字符映射转换表. 可以只接受一个参数,此时这个参数是个字典类型(暂不研究这种情况). 对于接受两个参数的最简单的 ...

  6. cocos2dx 3.x ccPositionTextureColor_vert与ccPositionTextureColor_noMVP_vert

    在cocos2dx 2.x中,如果我们要对sprite更换片段shader,写成: myProgram->initWithByteArrays(ccPositionTextureColor_ve ...

  7. eclipse部署class默认在build文件夹

    1.eclipse新建的Dynamic web project 默认是将类编译在build如果在eclipse中配置了tomcate(server项),用自带的发布功能,是能自动识别的.2.自已修改到 ...

  8. js的一些代码…

    获取请求的参数 例:VisitPhoto.aspx?imgurl=http://s.cn.bing.net/az/hprichbg/rb/BottlenoseDolphinSurface_ZH-CN1 ...

  9. gcc自有的define语法,解决变量多次自加的问题

    如果定义一个这样的宏: #define MAX(a,b) ((a)>(b)?(a):(b)) int main(void){ int a=5,b=10; MAX(a++,b++); printf ...

  10. mongoose中的流查询stream query

    mongoose中的流查询stream query,功能类似于php中的mysql_fetch_array,每次从集合中获取一条记录(文档) var cursor = Person.find({ oc ...