zoukankan      html  css  js  c++  java
  • mysql慢查询日志

    一、开启慢查询日志

    1.查询慢查询时间 默认10秒

    SHOW VARIABLES LIKE "long_query_time"

    2.查询慢查询日志文件地址

    SHOW VARIABLES LIKE "%slow%"

    3.如果没有开启慢查询日志则,在 my.ini 的 [mysqld] 下面配置项,然后重启mysqld服务即可。

    小于等于5.5版本的mysql的设置方式

    #慢查询日志文件地址
    log-slow-queries = "E:/phpStudy/MySQL/long_query_logs/buexplain-slow.log"
    #慢查询时间(单位是秒),大于该时间的sql都将记录到慢查询日志文件。
    long_query_time=0.5

    大于等于5.6版本的mysql的设置方式

    #开启慢查询 1或on表示开启,0或off表示关闭
    slow_query_log=on 
    #慢查询日志文件地址
    slow_query_log_file="E:/phpStudy/MySQL/long_query_logs/buexplain-slow.log"
    #慢查询时间(单位是秒),大于该时间的sql都将记录到慢查询日志文件。
    long_query_time=0.5

    4.测试慢查询

    SELECT sleep( 1 ) 

    5.查看慢查询次数

    SHOW GLOBAL STATUS LIKE '%slow%'

     二、慢查询日志分析

    # Time: 151001 19:06:58
    # User@Host: root[root] @ localhost [127.0.0.1]
    # Query_time: 1.000057  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
    SET timestamp=1443697618;
    select sleep(1);

    第一行:执行时间
    第二行:执行用户
    第三行(重要):
    Query_time SQL执行的时间,越长则越慢
    Lock_time 在MySQL服务器阶段(不是在存储引擎阶段)等待表锁时间
    Rows_sent 查询返回的行数
    Rows_examined 查询检查的行数

    第四行:执行的sql

    分析处理日志的工具有:

    1.mysqldumpslow 官方提供的perl脚本

    2.mysqlsla 是 hackmysql.com 推出的一款日志分析工具

    3.pt-query-digest 一个perl脚本

    相关链接:

    http://www.zrwm.com/?p=2668

    http://blog.csdn.net/a600423444/article/details/6854289

    三、总结

    不要开启 log-queries-not-using-indexes 没有索引查询记录功能,它影响主要的慢查询日志的查看。

  • 相关阅读:
    Perforce笔记
    Lumia 800 无法正常开机
    Windows service 中出现Set ServiceLogin 对话框
    华为要求七千员工先辞职再竞岗 补偿费超10亿
    BLOG新址:http://longware.spaces.live.com
    家装(2)
    解脱
    论持久战
    有感于软件项目测试
    THE POEM AS A GIFT FOR MY GF'S BIRTHDAY
  • 原文地址:https://www.cnblogs.com/buexplain/p/4851409.html
Copyright © 2011-2022 走看看