zoukankan      html  css  js  c++  java
  • MySQL 慢查询

    开启慢查询日志

    在配置文件my.cnf或my.ini中在 [mysqld] 一行下面加入两个配置参数

    slow_query_log = on     #开启慢查询
    long_query_time=1       #设置慢查询时间 1 s
    log-slow-queries="D:/phpStudy/MySQL/data/slow_query.log"  #旧版(5.6以下版本)MySQL数据库慢查询日志存储路径。可以不设置该参数,系统则会默认给一个缺省的文件hostname-slow.log
    slow_query_log_file="D:/phpStudy/MySQL/data/slow_query.log" #新版(5.6及以上版本)慢查询日志保存路径 未指定slow_query_log_file的情况下,会自动生成一个以主机名+‘slow'.log 的文件
    log-queries-not-using-indexes = on #开启记录没有使用索引查询语句

    sql 查看慢查询配置

    show status like 'slow_queries';    #慢查询的次数 (默认是慢查询时间10s)
    show variables like 'long_query_time' ;   //可以显示当前慢查询时间
    set long_query_time=1 ;    //可以修改慢查询时间 当前会话有效,永久有效请修改配置文件

    慢查询记录到日志

    在默认情况下,低版本的mysql不会记录慢查询,需要在启动mysql时候,指定记录慢查询才可以

    binmysqld.exe –log-slow-queries=D:/abc.log [低版本mysql5.0可以在my.ini指定]

    该慢查询日志在mysql5.0这个版本中时放在 mysql安装目录/data/下;

    针对 mysql5.5启动慢查询有两种方法

      ① binmysqld.exe - -safe-mode - -slow-query-log

      ②在my.ini 文件中配置 [mysqld] 添加slow-query-log = on # 开启慢查询这个功能

    可以通过  slow_query_log_file="日志存放位置"指定目录,默认存放在 mysql5.5.19是在my.ini 的 datadir=“目录” ;

    在mysql5.6中,默认是启动记录慢查询的,my.ini其中有一个配置项 slow-query-log=1;

    慢查询相关命令

    mysql> show variables like '%slow%';
    +---------------------+---------------------------------------+
    | Variable_name       | Value                                 |
    +---------------------+---------------------------------------+
    | log_slow_queries    | OFF                                   |
    | slow_launch_time    | 2                                     |
    | slow_query_log      | OFF                                   |
    | slow_query_log_file | D:phpStudyMySQLdataAdmin-slow.log |
    +---------------------+---------------------------------------+
    mysql> show variables like '%long%';
    +---------------------------------------------------+-----------+
    | Variable_name                                     | Value     |
    +---------------------------------------------------+-----------+
    | long_query_time                                   | 10.000000 |
    | max_long_data_size                                | 1048576   |
    | performance_schema_events_waits_history_long_size | 10000     |
    +---------------------------------------------------+-----------+
    mysql> show variables like '%min%';
    +--------------------------+-------+
    | Variable_name            | Value |
    +--------------------------+-------+
    | ft_min_word_len          | 4     |
    | min_examined_row_limit   | 0     |
    | query_cache_min_res_unit | 4096  |
    +--------------------------+-------+

    相关文章:MySQL中EXPLAIN解释命令 查看索引是否生效

  • 相关阅读:
    iptables 详解
    Linux Crontab 定时任务命令详解
    Linux下查看历史操作记录
    Linux shell if 参数
    Linux的五个查找命令:find,locate,whereis,which,type
    linux下IPTABLES配置详解
    Linux命令之while Bash中的While循环
    日志分割脚本
    详解 Too many open files
    微软停止对WindowsNT4.0系统提供无偿的支持
  • 原文地址:https://www.cnblogs.com/xuey/p/9533223.html
Copyright © 2011-2022 走看看