• MySQL慢查询


    MySQL慢查询 - 开启慢查询(1)

     

    一、简介

    开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。

    二、参数说明

    slow_query_log 慢查询开启状态
    slow_query_log_file 慢查询日志存放的位置(这个目录需要MySQL的运行帐号的可写权限,一般设置为MySQL的数据存放目录)
    long_query_time 查询超过多少秒才记录

    三、设置步骤

    1.查看慢查询相关参数

    复制代码
    mysql> show variables like 'slow_query%';
    
    +---------------------+------------------------------------+
    | Variable_name       | Value                              |
    +---------------------+------------------------------------+
    | slow_query_log      | ON                                 |
    | slow_query_log_file | /var/lib/mysql/test-node4-slow.log |
    +---------------------+------------------------------------+
    mysql> show variables like 'long_query_time'; +-----------------+-----------+ | Variable_name | Value | +-----------------+-----------+ | long_query_time | 1.000000 | +-----------------+-----------+
    复制代码

    2.设置方法
    方法一:全局变量设置
    将 slow_query_log 全局变量设置为“ON”状态

    mysql> set global slow_query_log='ON'; 

    设置慢查询日志存放的位置

    mysql> set global slow_query_log_file='/var/lib/mysql/test-node4-slow.log';

    查询超过1秒就记录

    mysql> set global long_query_time=1;

    方法二:配置文件设置
    修改配置文件my.cnf,在[mysqld]下的下方加入

    [mysqld]
    slow_query_log = ON
    slow_query_log_file = /var/lib/mysql/test-node4-slow.log
    long_query_time = 1

    3.重启MySQL服务

    service mysqld restart

    4.查看设置后的参数

    复制代码
    mysql> show variables like 'slow_query%';
    
    +---------------------+------------------------------------+
    | Variable_name       | Value                              |
    +---------------------+------------------------------------+
    | slow_query_log      | ON                                 |
    | slow_query_log_file | /var/lib/mysql/test-node4-slow.log |
    +---------------------+------------------------------------+
    mysql> show variables like 'long_query_time';
    +-----------------+----------+
    | Variable_name   | Value    |
    +-----------------+----------+
    | long_query_time | 1.000000 |
    +-----------------+----------+
    复制代码

    四、测试

    1.执行一条慢查询SQL语句

    mysql> select sleep(2);

    2.查看是否生成慢查询日志

    ls /usr/local/mysql/data/slow.log

    如果日志存在,MySQL开启慢查询设置成功!

     下一篇:MySQL慢查询(二) - pt-query-digest详解慢查询日志

    /var/lib/mysql/test-node4-slow.log

  • 相关阅读:
    1052 Linked List Sorting (25 分)
    1051 Pop Sequence (25 分)
    1050 String Subtraction (20 分)
    1049 Counting Ones (30 分)
    1048 Find Coins (25 分)
    1047 Student List for Course (25 分)
    1046 Shortest Distance (20 分)
    1045 Favorite Color Stripe (30 分)
    1044 Shopping in Mars (25 分)
    1055 The World's Richest (25 分)
  • 原文地址:https://www.cnblogs.com/maxforb/p/11764294.html
Copyright © 2020-2023  润新知