在 /etc/my.cnf 的 [mysqld] 區段加入以下配置:
# 開啟慢查詢日誌 slow-query-log=On # 慢查詢日誌檔案路徑 slow_query_log_file=/data/mysql/log/mysql_slow_query.log # 超過幾秒記錄為慢查詢(此處設為 2 秒) long_query_time=2 # 記錄未使用索引的查詢 log_queries_not_using_indexes = ON
| 參數 | 作用 | 建議值 |
|---|---|---|
| slow-query-log | 總開關,啟用慢查詢記錄 | On |
| slow_query_log_file | 指定日誌檔案完整路徑,需確保目錄存在且 MySQL 有寫入權限 | /var/log/mysql/slow.log |
| long_query_time | 閾值秒數,執行時間超過此值記入日誌,可設定微秒精度 | 1-2 秒(視業務而定) |
| log_queries_not_using_indexes | 記錄全表掃描等未用索引的查詢,優化索引的重要參考 | ON |
SHOW VARIABLES LIKE 'slow_query%'; SHOW VARIABLES LIKE 'long_query_time';