啓用MySQL慢查詢
一,到配置文件裏面添加代碼
vim /etc/my.cnf
[mysqld]
slow-query-log = on # 開啓慢查詢功能
slow_query_log_file = /usr/local/mysql/data/slow-query.log # 慢查詢日誌存放路徑與名稱
long_query_time = 5 # 查詢時間超過5s的查詢語句
### log-queries-not-using-indexes = on # 列出沒有使用索引的查詢語句
二,,用命令開啓慢查詢
mysql> show variables like "%long%"; //查看一下默認爲慢查詢的時間10秒
+-----------------+-----------+
| Variable_name | Value |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+
1 row in set (0.00 sec)
mysql> set global long_query_time=2; //設置成2秒,加上global,下次進mysql已然生效 Query OK, 0 rows affected (0.00 sec)
mysql> show variables like "%slow%"; //查看一下慢查詢是不是已經開啓
+---------------------+---------------------------------+
| Variable_name | Value |
+---------------------+---------------------------------+
| log_slow_queries | OFF |
| slow_launch_time | 2 |
| slow_query_log | OFF |
| slow_query_log_file | /usr/local/mysql/mysql-slow.log |
+---------------------+---------------------------------+
4 rows in set (0.00 sec)
mysql> set slow_query_log='ON'; //加上global,不然會報錯的。
ERROR 1229 (HY000): Variable 'slow_query_log' is a GLOBAL variable and should be set with SET GLOBAL
mysql> set global slow_query_log='ON'; //啓用慢查詢
Query OK, 0 rows affected (0.28 sec)
mysql> show variables like "%slow%"; //查看是否已經開啓
+---------------------+---------------------------------+
| Variable_name | Value |
+---------------------+---------------------------------+
| log_slow_queries | ON |
| slow_launch_time | 2 |
| slow_query_log | ON |
| slow_query_log_file | /usr/local/mysql/mysql-slow.log |
+---------------------+---------------------------------+
4 rows in set (0.00 sec)