Mysql开启慢查询日志

  1. 修改/etc/my.cnf文件

    1. long_query_time=1                     \\查询超时1秒即为慢查询

    2. slow_query_log_file=/tmp/slow.log     \\慢查询日志存放位置


  2. 在mysql控制台设置

    1. mysql> set long_query_time=1;                        \\设置查询超时1秒即为慢查询
    2. mysql> set global slow_query_log_file='日志位置'     \\设置慢查询日志存放位置
    3. mysql> show variables like 'long%';                  \\查看慢查询的条件
    4. mysql> show variables like 'slow%';                  \\查看慢查询详细信息
    5. mysql> set global slow_query_log='ON'                \\开启慢查询


  3. mysqldumpslow慢查询工具

    选项: 

      -s    是表示按照何种方式排序;
            c    按照记录次数来排序
            t    按照时间来排序
            l    按照查询时间来排序
            r    按照返回的记录数来排序
            ac   按照记录次数来倒序
            at   按照时间来倒序
            al   按照查询时间来倒序
            ar   按照返回的记录数来倒序;
            
      -t    是top n的意思,即为返回前面多少条的数据;
      -g    后边可以写一个正则匹配模式,大小写不敏感的;

    例:

    mysqldumpslow -s c -t 10 slow.log
    输出记录次数最多的10条SQL语句
    mysqldumpslow -s r -t 10 slow.log
    得到返回记录集最多的10个查询。
    mysqldumpslow -s t -t 10 -g “left join” slow.log
    得到按照时间排序的前10条里面含有左连接的查询语句。


本文出自 “罗老三的运维之路” 博客,转载请与作者联系!

你可能感兴趣的:(mysql,慢查询,mysqldumpslow)