查看当前服务器是否开启慢查询:

1、快速办法,运行sql语句show VARIABLES like "%slow%"

2、直接去my.conf中查看。

my.conf中的配置(放在[mysqld]下的下方加入)

[mysqld]

log-slow-queries = /usr/local/mysql/var/slowquery.log
long_query_time = 1  #单位是秒
log-queries-not-using-indexes

使用sql语句来修改:不能按照my.conf中的项来修改的。修改通过"show VARIABLES like "%slow%" "
语句列出来的变量,运行如下sql:

set global log_slow_queries = ON;
set global slow_query_log = ON;
set global long_query_time=0.1; #设置大于0.1s的sql语句记录下来

慢查询日志文件的信息格式:

# Time: 130905 14:15:59         时间是2013年9月5日 14:15:59(前面部分容易看错哦,乍看以为是时间戳)
# User@Host: root[root] @  [183.239.28.174]  请求mysql服务器的客户端ip
# Query_time: 0.735883  Lock_time: 0.000078 Rows_sent: 262  Rows_examined: 262 这里表示执行用时多少秒,0.735883秒,1秒等于1000毫秒

SET timestamp=1378361759;  这目前我还不知道干嘛用的
show tables from `test_db`; 这个就是关键信息,指明了当时执行的是这条语句

设置毫秒级别与mysql版本的关系

很多网上资料显示,5.21之前的版本,在my.conf中的long_query_time最小只能设置为1(也就是最小1秒)。我自己歪打误撞,发现我通过其他方式可以实现。

"long_query_time = 0.1"这种方式我没试,因为数据库服务器在跑。需要重启。所以没试。我是通过全局变量设置实现慢日志查询记录的。

可以通过全局变量设置方式实现毫秒级别记录:

set global long_query_time = 0.01

我服务器上mysql版本为:5.1.60-log

我试过这种方式有效。

怎么测试自己的查询是否会被记录下来呢?
运行语句
select sleep(0.13);

我故意设置0.13秒延迟,然后这条语句按照预期(因为之前设置超过0.1秒)会被记录到日志文件中去。

转自:http://www.cnblogs.com/wangtao_20/archive/2013/09/06/3304645.html

亲测,可行。

mysql慢查询的更多相关文章

  1. Linux下MySQL慢查询分析mysqlsla安装使用

    说明: 操作系统:CentOS 5.X 64位 MySQL版本:mysql-5.5.35 MySQL配置文件:/etc/my.cnf MySQL 数据库存放目录:/data/mysql 实现目的:开启 ...

  2. MySQL的查询计划中ken_len的值计算

    本文首先介绍了MySQL的查询计划中ken_len的含义:然后介绍了key_len的计算方法:最后通过一个伪造的例子,来说明如何通过key_len来查看联合索引有多少列被使用. key_len的含义 ...

  3. mysql的查询、子查询及连接查询

    >>>>>>>>>> 一.mysql查询的五种子句         where(条件查询).having(筛选).group by(分组). ...

  4. MySQL慢查询日志总结

    慢查询日志概念 MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志 ...

  5. 【转】Mysql联合查询union和union all的使用介绍

    Mysql的联合查询命令UNION和UNION ALL,总结了使用语法和注意事项,以及学习例子和项目例子,需要的朋友可以参考下 一.UNION和UNION ALL的作用和语法 UNION 用于合... ...

  6. mysql慢查询日志分析工具 mysqlsla(转)

    mysql数据库的慢查询日志是非常重要的一项调优辅助日志,但是mysql默认记录的日志格式阅读时不够友好,这是由mysql日志记录规则所决定的,捕获一条就记录一条,虽说记录的信息足够详尽,但如果将浏览 ...

  7. Mysql慢查询和慢查询日志分析

     Mysql慢查询和慢查询日志分析   众所周知,大访问量的情况下,可添加节点或改变架构可有效的缓解数据库压力,不过一切的原点,都是从单台mysql开始的.下面总结一些使用过或者研究过的经验,从配置以 ...

  8. [django/mysql] 使用distinct在mysql中查询多条不重复记录值的解决办法

    前言:不废话.,直接进入正文 正文: 如何使用distinct在mysql中查询多条不重复记录值? 首先,我们必须知道在django中模型执行查询有两种方法: 第一种,使用django给出的api,例 ...

  9. MySQL 慢查询日志分析及可视化结果

    MySQL 慢查询日志分析及可视化结果 MySQL 慢查询日志分析 pt-query-digest分析慢查询日志 pt-query-digest --report slow.log 报告最近半个小时的 ...

  10. mysql datetime查询异常

    mysql datetime查询异常 异常:Value '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp (2011 ...

随机推荐

  1. java实例--海盗的最优方案

    package unit4; public class Pirate{ private String name; private int[] schemes; private int index; p ...

  2. JVM的粗略简述

    什么是Java虚拟机 虚拟机是一种抽象化的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的.Java虚拟机有自己完善的硬体架构,如处理器.堆栈.寄存器等,还具有相应的指令系统.JVM屏蔽了与 ...

  3. 拼图游戏 v1.1

    我一直对拼图游戏比较有兴趣,市面上卖的所谓“1000块拼图”也玩过不少,不过玩那个太占地方,后来也不再买了,同时也就萌生了在电脑上玩拼图的想法. 现在虽然有很多拼图游戏,但能大多数只能支持几十或几百块 ...

  4. c# windows service

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  5. 关于 List<T>

    System.Object   System.Collections.Generic.List<T>   list<string,string>,这种形式本身就是错误的,你可以 ...

  6. This function has none of DETERMINISTIC, NO SQL 解决办法

    在恢复mysql数据库时提示 1418 - This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its decl ...

  7. 【POJ】2828 Buy Tickets(线段树+特殊的技巧/splay)

    http://poj.org/problem?id=2828 一开始敲了个splay,直接模拟. tle了.. 常数太大.. 好吧,说是用线段树.. 而且思想很拽.. (貌似很久以前写过貌似的,,) ...

  8. Graph database_neo4j 底层存储结构分析(7)

    3.7  Relationship 的存储 下面是neo4j graph db 中,Relationship数据存储对应的文件: neostore.relationshipgroupstore.db ...

  9. Graph database_neo4j 底层存储结构分析(3)

    3.3  通用的Store 类型 3.3.1    id 类型 下面是 neo4j db 中,每种Store都有自己的ID文件(即后缀.id 文件),它们的格式都是一样的. [test00]$ls - ...

  10. SSH整合JBPM4.4

    第一步:导入所需jar包: 所需的jar包(使用了hibernate annotation和struts2的convention-plugin,可能有多余的包,没做清理): 第二步:修改jbpm配置文 ...