MySQL慢查詢日志(SLOW LOG)


慢查詢日志可以幫助DBA或開發人員定位可能存在問題的SQL語句,從而進行優化。

如何開啟

默認情況下,MySQL是不開啟慢查詢日志的。可以通過以下命令查看是否開啟:

mysql> SHOW VARIABLES LIKE 'long_query_time';
+-----------------+-----------+
| Variable_name   | Value     |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+
1 row in set (0.01 sec)

mysql> SHOW VARIABLES LIKE 'slow_query_log';
+----------------+-------+
| Variable_name  | Value |
+----------------+-------+
| slow_query_log | OFF   |
+----------------+-------+
1 row in set (0.00 sec)
  • long_query_time 查詢超過多少秒才記錄。
  • slow_query_log 慢查詢開啟狀態。

臨時開啟

通過以下命令可以在客戶端臨時開啟慢查詢日志:

mysql> set global slow_query_log='ON';
Query OK, 0 rows affected (0.00 sec)
 
mysql> set global slow_query_log_file='/var/lib/mysql/instance-1-slow.log';
Query OK, 0 rows affected (0.00 sec)
 
mysql> set global long_query_time=2;
Query OK, 0 rows affected (0.00 sec)

配置開啟

也可以在服務端配置 mysql ,通過修改配置文件的這幾個參數來開啟:

/etc/my.cnf
[mysqld]
slow_query_log = ON
slow_query_log_file = /var/lib/mysql/instance-1-slow.log
long_query_time = 2

配置后,重啟 mysql 服務即可。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM