`
nicegege
  • 浏览: 589405 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

【转】mysql慢查询日志开启和存储格式

阅读更多

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表示日志存放的路径

     设置开启状态: 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 

   设置执行时间为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自带的分析工具

 

本文出处为http://www.2cto.com/database/201504/387155.html

 

分享到:
评论

相关推荐

    MySQL慢查日志的开启方式与存储格式详析

    本篇文章将详细探讨如何开启慢查询日志以及其存储格式。 1. 开启慢查询日志 - **查看当前慢查询日志状态**:使用`show variables like 'slow_query_log'`命令,如果返回值为ON,表示已开启,否则为OFF。 - **设置...

    mysql开启查看慢查询日志借鉴.pdf

    以下是关于开启和查看MySQL慢查询日志的详细说明: 1. **开启慢查询日志**: 要启用慢查询日志,你需要编辑MySQL配置文件。在Linux系统上通常是`my.cnf`,而在Windows系统上则是`my.ini`。在`[mysqld]`配置段中...

    关于Mysql通用查询日志和慢查询日志分析

    总之,理解并有效地使用MySQL的通用查询日志和慢查询日志是数据库性能监控和调优的关键步骤。通过对日志的分析,我们可以识别潜在的性能问题,进而采取措施优化数据库,提升服务质量和用户体验。

    MySQL慢查询日志的配置与使用教程

    示例中的慢查询日志条目显示了一个执行时间较长的SQL语句,其中`sql_text`字段是以二进制形式存储的,需要通过特定方法(如`CONVERT`函数)转换为可读的文本格式。 除了记录到文件,MySQL还允许将慢查询日志记录到...

    mysql 开启慢查询 如何打开mysql的慢查询日志记录

    MySQL的慢查询日志是数据库管理员用来识别和优化性能瓶颈的重要工具。它记录了执行时间超过预设阈值的SQL查询,帮助分析哪些查询可能拖慢数据库系统的整体性能。以下是如何开启MySQL慢查询日志记录及其相关的知识点...

    mysql慢日志导入数据库表中

    MySQL慢查询日志以纯文本格式存储,包含每个慢查询的详细信息,如查询时间、SQL语句、执行计划等。开启慢查询日志可以在服务器启动时配置,或者通过`SET GLOBAL slow_query_log = ON`动态设置。日志默认保存在数据...

    go写的mysql的慢查询日志解析工具,输出到一个数据的表里边

    `go写的mysql的慢查询日志解析工具,输出到一个数据的表里边`这个项目显然旨在解决这个问题,利用Go语言的高效处理能力,将日志信息解析并存储到数据表中,便于进一步的数据分析和处理。 首先,我们需要了解Go语言...

    mysql-slow-log-import-to-elasticsearch:将mysql慢查询日志导入elasticsearch进行分析

    1. **MySQL慢查询日志**:MySQL服务器默认不会开启慢查询日志,需要在配置文件(my.cnf或my.ini)中设置`slow_query_log=1`来开启,并通过`slow_query_log_file`指定日志路径。此外,可以调整`long_query_time`参数...

    mysql 慢查询

    2. **slow_query_log_file**:指定慢查询日志文件的存储路径和文件名。 - **设置方法**:`set global slow_query_log_file = '/path/to/mysql_slow.log';` 3. **long_query_time**:定义一个阈值,超过这个时间的...

    MySQL日志和数据恢复

    错误日志通常存储在MySQL的数据目录下,文件名为`error.log`或`mysql.err`。 2. 二进制日志 (Binary Log) 二进制日志记录了所有改变数据库状态的非临时性事件,包括数据修改和结构修改,它是实现数据恢复和复制的...

    mysql 日志备份恢复2

    MySQL日志系统是数据库管理的重要组成部分,它对于数据安全、故障恢复和性能优化起到关键作用。本文将详细介绍MySQL中的几种日志类型,以及如何利用这些日志进行备份和恢复。 首先,MySQL的日志系统包括错误日志、...

    第15章 MySQL日志PPT

    MySQL日志是数据库管理系统中至关重要的一部分,它记录了数据库的各种操作,包括查询、更新、插入和删除等。日志的存在确保了数据的安全性、可恢复性和性能优化。在本章中,我们将深入探讨MySQL的日志系统,主要包括...

    mysql重做2进制日志.doc

    在MySQL中,二进制日志通常以`.bin`或`.log`的格式存储,每个日志文件由一个唯一的文件号标识,例如`mysql-bin.000007`。当数据库发生故障或需要恢复到某个特定时间点时,可以通过以下步骤进行: 1. **恢复到备份点...

    mysql5.7身份鉴别&日志审计插件

    - **日志格式与存储**:审计日志可以存储在文件系统中,也可以配置为使用二进制日志格式,便于分析。管理员需确保日志文件的安全性,防止篡改或泄露。 3. **安全最佳实践**: - **限制权限**:确保每个用户仅拥有...

    MySQL 日志详解(超详细)

    MySQL日志系统是数据库管理的重要组成部分,它记录了数据库的各种操作和事件,为故障排查、性能优化、数据恢复等提供了重要参考。以下是对MySQL日志的详细解析: 1. 错误日志(Error Log) MySQL的错误日志记录了...

    mysql数据性能调优

    在给定文件中,提到了通过配置和使用MySQL的慢查询日志(slow query log)来进行性能调优,下面将详细解读这部分内容。 首先,我们需要了解什么是慢查询日志。慢查询日志是MySQL数据库提供的一种日志记录功能,它...

    使用binlog日志恢复MySQL数据库删除数据的方法

    另外,binlog日志的存储格式(如STATEMENT、ROW或MIXED)也会影响恢复的难易程度和完整性。 总之,了解并正确使用MySQL的binlog日志是数据库管理员必备的技能之一,它能帮助我们在遭遇数据灾难时尽可能地减少损失。...

    mysql日志文件的使用.pdf

    MySQL日志文件是数据库管理的重要组成部分,它们记录了MySQL服务器的各种操作,有助于故障排查、数据恢复和性能优化。本文将详细介绍MySQL的日志类型、配置方法以及如何查看和使用这些日志。 1. MySQL日志类型: -...

    MySQL数据库应用案例视频教程下载第15讲 MySQL日志.zip

    第15讲“MySQL日志”可能涵盖了以下内容: 1. **二进制日志(Binary Log)**:详述如何启用和配置二进制日志,包括`binlog_format`(日志格式)、`log_bin`(开启二进制日志)、`expire_logs_days`(日志自动清理...

Global site tag (gtag.js) - Google Analytics