• 慢日志


    慢日志

    1、将MySQL服务器中影响数据库性能的相关SQL语句记录到日志文件中

    2、通过对这些特殊的SQL语句进行分析和改进,提高数据库的性能。

    默认情况下,MySQL 数据库并不启动慢查询日志,需要我们手动来设置这个参数,当然,如果不是调优需要的话,一般不建议启动该参数,因为开启慢查询日志或多或少会带来一定的性能影响。慢查询日志支持将日志记录写入文件,也支持将日志记录写入数据库表。

    配置慢日志

    #在配置文件添加
    [root@db03 ~]# vim /etc/my.cnf
    #开启慢查询
    slow_query_log = on
    #慢查询中记录没有使用索引的query
    log_queries_not_using_indexes=on
    #返回较慢的日志mysql5.6版本以上,取消了参数log-slow-queries,更改为slow-query-log-file 
    slow_query_log_file=/tmp/slow.log
    #慢查询时间,这里为1秒,超过1秒会被记录
    long_query_time=1
    
    [root@db03 ~]# systemctl restart mysqld
    
    #查看是否开启
    mysql> show variables like '%slow_query_log%';
    +---------------------+---------------+
    | Variable_name       | Value         |
    +---------------------+---------------+
    | slow_query_log      | ON            |
    | slow_query_log_file | /tmp/slow.log |
    +---------------------+---------------+
    2 rows in set (0.00 sec)
    
    #测试慢日志
    mysql> select sleep(2);
    +----------+
    | sleep(2) |
    +----------+
    |        0 |
    +----------+
    1 row in set (2.00 sec)
    
    [root@db03 ~]# cat /tmp/slow.log 
    /usr/local/mysql/bin/mysqld, Version: 5.7.10-log (MySQL Community Server (GPL)). started with:
    Tcp port: 3306  Unix socket: /tmp/mysql.sock
    Time                 Id Command    Argument
    # Time: 2021-10-20T01:30:17.096130Z
    # User@Host: root[root] @ localhost []  Id:     2
    # Query_time: 2.001499  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
    SET timestamp=1634693417;
    select sleep(2);
    
    
  • 相关阅读:
    SQL Server中的Merge关键字
    详解公用表表达式(CTE)
    SQL Server优化50法
    Chrome下的脚本管理器
    初步设计了一下视频工具合集的界面
    迅雷的剪贴板冲突好强大
    在C#中用MediaInfo获取视频或音频的属性
    用Command模式简单的实现Undo&Redo功能
    用DoddleReport快速生成报表
    移动支付时代早日来临吧
  • 原文地址:https://www.cnblogs.com/backz/p/15427484.html
Copyright © 2020-2023  润新知