• MySQL slow_query_log慢查询日志配置详解


    slow_query_log是记录SQL执行超过一定时间的参数。

    slow query log相关变量

    1、命令行参数:

        --log-slow-queries

        指定日志文件存放位置,可以为空,系统会给一个缺省的文件host_name-slow.log

    2、系统变量

        log_slow_queries

        指定日志文件存放位置,可以为空,系统会给一个缺省的文件host_name-slow.log

        slow_query_log

        slow quere log的开关,当值为1的时候说明开启慢查询。

        slow_query_log_file

        指定日志文件存放位置,可以为空,系统会给一个缺省的文件host_name-slow.log

        long_query_time

        记录超过的时间,默认为10s

        log_queries_not_using_indexes

        log下来没有使用索引的query,可以根据情况决定是否开启

    发现执行时间过长的SQL,有效的改善数据库的性能时,非常有用的参数。

    在这里介绍MySQL版本5.1以上里的配置方法。

    修改/etc/my.cnf

    slow_query_log : 无效(0或者OFF)、有效(1或者ON)
    slow_query_log_file : 指定日志文件
    long_query_time : 超过指定时间的SQL会记录到日志文件(默认时间为10秒)
    ※MySQL5.1可以指定1秒以下的时间。

    # vi /etc/my.cnf
    [mysqld]

    slow_query_log = 1
    slow_query_log_file = /data/log/mysql/slow_query.log
    long_query_time = 5

    使用set global

    # mysql -u<用户名> -p <数据库名>
    Enter password: [输入密码]

    set global slow_query_log = 1;
    set global slow_query_log_file = ‘/data/log/mysql/slow_query.log';
    set global long_query_time = 5;

    配置有效化

    重启MySQL或者set global以后,配置才会有效。

    总结

    因数据库的响应慢导致整个系统的响应慢的情况非常多,推荐大家安装MySQL以后有效化slow_query_log。
    ————————————————
    版权声明:本文为CSDN博主「地表最强菜鸡」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qq_19734597/article/details/81040219

  • 相关阅读:
    [原创]失眠应该顺其自然
    [原创]电饭锅终于煮出有粥油的小米粥了
    [原创]背诵是最好的入静法门
    JSON字符串与JSON对象的区别
    C#注解属性的感想一:
    我对面向对象的理解二:
    我对面向对象的理解一:
    如何理解泛型中的new()约束
    vue关于导航守卫的几种应用场景
    vue3中如何去请求数据
  • 原文地址:https://www.cnblogs.com/chinasoft/p/14606298.html
Copyright © 2020-2023  润新知