1、修改my.cnf
sudo vim /etc/my.cnf
添加或配置
[mysqld]
slow_query_log = 1
slow_query_log_file = /var/lib/mysql/slow-query.log # 若没有指定,默认名字为hostname_slow.log
long_query_time = 1
log_queries_not_using_indexes = 1
分析
slow_query_log = 1
表示开启慢查询,0表示关闭
slow_query_log_file
指定慢查询日志路径
需要MySQL对该路径有写权限
long_query_time = 1
表示查询时间>=1秒才记录日志
log_queries_not_using_indexes = 1
表明记录没有使用索引的 SQL 语句
2、重启 MySQL
systemctl restart mysqld
重启后,查看该路径下是否存在 slow-query.log文件
/var/lib/mysql/slow-query.log
3、检查参数
mysql> show variables like 'slow_query%';
+---------------------+-------------------------------+
| Variable_name | Value |
+---------------------+-------------------------------+
| slow_query_log | ON |
| slow_query_log_file | /var/lib/mysql/slow-query.log |
+---------------------+-------------------------------+
2 rows in set (0.00 sec)
mysql> show variables like 'long_query_time';
+-----------------+----------+
| Variable_name | Value |
+-----------------+----------+
| long_query_time | 1.000000 |
+-----------------+----------+
1 row in set (0.00 sec)
整理不易,你的点赞、关注是对我莫大的鼓励