• 慢日志之一:开启mysql慢查询日志并使用mysqldumpslow命令查看,分析诊断工具之四


    一、查看慢日志是否开启

    mysql> show variables like "%slow%";
    +---------------------------+-------------------------------+
    | Variable_name             | Value                         |
    +---------------------------+-------------------------------+
    | log_slow_admin_statements | OFF                           |
    | log_slow_slave_statements | OFF                           |
    | slow_launch_time          | 2                             |
    | slow_query_log            | OFF                           |
    | slow_query_log_file       | /var/lib/mysql/cmos1-slow.log |
    +---------------------------+-------------------------------+
    5 rows in set (0.01 sec)

    二、开启和关闭

    mysql> set global slow_query_log=1;
    Query OK, 0 rows affected (0.07 sec)

    慢日志阈值设置:

    mysql> show variables like "%long_query_time%";
    +-----------------+-----------+
    | Variable_name   | Value     |
    +-----------------+-----------+
    | long_query_time | 10.000000 |
    +-----------------+-----------+
    1 row in set (0.01 sec)
    
    mysql> 
    mysql> set global long_query_time=4;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> 

    三、查看慢日志内容

    long_query_time = 1 #定义超过1秒的查询计数到变量Slow_queries。
    log-slow-queries = /usr/local/mysql/data/slow.log #定义慢查询日志路径。
    log-queries-not-using-indexes #未使用索引的查询也被记录到慢查询日志中(可选)。
    mysql自带了一个查看慢日志的工具mysqldumpslow。
    执行mysqldumpslow –h可以查看帮助信息。
    主要介绍两个参数-s和-t
    -s 这个是排序参数,可选的有:
    al: 平均锁定时间
    ar: 平均返回记录数
    at: 平均查询时间
    c: 计数
    l: 锁定时间
    r: 返回记录
    t: 查询时间

    -t n 显示头n条记录。
    实例:
    mysqldumpslow -s c -t 20 host-slow.log
    mysqldumpslow -s r -t 20 host-slow.log
    上述命令可以看出访问次数最多的20个sql语句和返回记录集最多的20个sql。
    mysqldumpslow -t 10 -s t -g “left join” host-slow.log
    这个是按照时间返回前10条里面含有左连接的sql语句。
    用了这个工具就可以查询出来那些sql语句是性能的瓶颈,进行优化,比如加索引,该应用的实现方式等。

    使用mysqldumpslow 查看文件的方式查看:

    [root@cmos1 ~]# mysqldumpslow -s c -t 20 /var/lib/mysql/cmos1-slow.log

    linux下直接用查看文件的方式查看:

  • 相关阅读:
    org.tinygroup.ehcache-EhCache缓存解决方案
    org.tinygroup.validate-验证框架
    org.tinygroup.context-上下文环境
    org.tinygroup.commons-常用工具类
    org.tinygroup.context2object-参数对象构建
    org.tinygroup.config-统一应用配置
    org.tinygroup.binarytree-二叉树
    org.tinygroup.service-服务
    flask之wtform与flask-session组件
    Flask信号源码流程
  • 原文地址:https://www.cnblogs.com/duanxz/p/2584825.html
Copyright © 2020-2023  润新知