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

    sql与索引优化

    数据库表结构优化

    系统配置

    硬件

    mysql> show variables like 'slow_query_log';
    +----------------+-------+
    | Variable_name  | Value |
    +----------------+-------+
    | slow_query_log | OFF   |
    +----------------+-------+
    1 row in set (0.00 sec)
    
    

    慢日志查询没有开启,可以开启一下。

    找到my.cnf,添加如下内容sudo vim /usr/local/mysql/my.cnf

    # 添加慢查询日志
    log_output=file
    slow_query_log=on
    slow_query_log_file = /tmp/mysql-slow.log
    log_queries_not_using_indexes=on
    long_query_time = 1
    
    

    重启mysql。

    mysql> show variables like 'slow_query_log';
    +----------------+-------+
    | Variable_name  | Value |
    +----------------+-------+
    | slow_query_log | ON    |
    +----------------+-------+
    1 row in set (0.00 sec)
    
    
    mysql> show variables like '%quer%';
    +----------------------------------------+------------------------------------+
    | Variable_name                          | Value                              |
    +----------------------------------------+------------------------------------+
    | binlog_rows_query_log_events           | OFF                                |
    | ft_query_expansion_limit               | 20                                 |
    | have_query_cache                       | YES                                |
    | log_queries_not_using_indexes          | ON                                 |
    | log_throttle_queries_not_using_indexes | 0                                  |
    | long_query_time                        | 1.000000                           |
    | query_alloc_block_size                 | 8192                               |
    | query_cache_limit                      | 1048576                            |
    | query_cache_min_res_unit               | 4096                               |
    | query_cache_size                       | 8388608                            |
    | query_cache_type                       | OFF                                |
    | query_cache_wlock_invalidate           | OFF                                |
    | query_prealloc_size                    | 8192                               |
    | slow_query_log                         | ON                                 |
    | slow_query_log_file                    | /tmp/mysql-slow.log |
    +----------------------------------------+------------------------------------+
    
    
    

    这时候再看,已经开启了慢查询日志。

    $ sudo cat /tmp/mysql-slow.log 
    /usr/local/mysql/bin/mysqld, Version: 5.6.40-log (Source distribution). started with:
    Tcp port: 3306  Unix socket: /tmp/mysql.sock
    Time                 Id Command    Argument
    
    

    如果更改日志目录位置
    比如,更改为/home/msyql/log/mysql-slow.log
    至少需要将log目录所有者设置为mysql:mysql。
    这样重启mysql的时候,才能自动生成mysql-slow.log文件。

    jiqing@jiqing-pad:/home/mysql/log$ ll
    总用量 12
    drwxr-xr-x 2 mysql  mysql  4096 5月  31 01:46 ./
    drwxr-xr-x 3 jiqing jiqing 4096 5月  31 01:26 ../
    -rw-rw---- 1 mysql  mysql   175 5月  31 01:46 mysql-slow.log
    jiqing@jiqing-pad:/home/mysql/log$ pwd
    /home/mysql/log
    
    

    如果log目录不是mysql用户权限,将无法生成日志文件,mysql用户无权写入数据。

  • 相关阅读:
    netty源码学习
    大话数据结构读书笔记
    java编程思想读书笔记
    spring依赖注入源码分析和mongodb自带连接本地mongodb服务逻辑分析
    spring的xml的property和constructor-arg的解析
    junit测试用例加载spring配置文件
    (大二下)软件需求分析阅读笔记01
    课后作业——需求分析
    2018年春季个人阅读计划
    软件需求与分析——大二下需会知识点
  • 原文地址:https://www.cnblogs.com/jiqing9006/p/9098181.html
Copyright © 2011-2022 走看看