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| OFF| | slow_query_log_file| /mysql/data/localhost-slow.log| +---------------------------+----------------------------------+mysql> show variables like 'long_query_time'; +-----------------+-----------+ | Variable_name| Value| +-----------------+-----------+ | long_query_time | 10.000000 | +-----------------+-----------+

2、设置方法 方法一:全局变量设置
1.将 slow_query_log 全局变量设置为“ON”状态
mysql> set global slow_query_log='ON';

2.设置慢查询日志路径
mysql> set global slow_query_log_file='/usr/local/mysql/data/slow.log';

  1. 设置慢查询时间,设置超过1s就统计
mysql> set global long_query_time=1;

【MySQL 开启慢查询日志】方法二:配置文件设置
  1. 修改配置文件my.cnf,在[mysqld]下的下方加入
[mysqld] slow_query_log = ON slow_query_log_file = /usr/local/mysql/data/slow.log long_query_time = 1

  1. 重启mysql服务生效配置
3、验证慢查询配置
  1. 检查设置后的参数
mysql> show variables like 'slow_query%'; +---------------------+--------------------------------+ | Variable_name| Value| +---------------------+--------------------------------+ | slow_query_log| ON| | slow_query_log_file | /usr/local/mysql/data/slow.log | +---------------------+--------------------------------+mysql> show variables like 'long_query_time'; +-----------------+----------+ | Variable_name| Value| +-----------------+----------+ | long_query_time | 1.000000 | +-----------------+----------+

  1. 执行一条慢查询SQL
mysql> select sleep(2);

  1. 查看慢查询日志中是否有记录

    推荐阅读