IT_man 發表於 2019-1-6 16:41:37

MySQL 開啟 slow query log, 儲存執行慢的 SQL 語句

有時發覺程式執行很慢, 其中一個要檢查的地方是資料庫。MySQL 可以將執行過的 SQL 語句全部紀錄下來, 或者可以只是將執行慢的 SQL 語句紀錄下來, 這樣對於 MySQL 語句的 Debug 就輕鬆很多了。

要紀錄執行慢的 SQL 語句, 可以透過修改 my.cnf 完成, my.cnf 多數在以下位置:

/etc/my.cnf
/etc/mysql/my.cnf

先開啟 my.cnf, 在 段落加入以下幾行:

slow_query_log = 1
slow_query_log_file = /var/log/mysql-slow.log
long_query_time = 2

以上幾行的意思分別是:

slow_query_log = 1
開啟紀錄執行慢的 SQL 語句:

slow_query_log_file = /var/log/mysql-slow.log
設定紀錄檔的位置在 /var/log/mysql-slow.log

long_query_time = 2
設定當 SQL 語句執行時間超過 2 秒時, 便會將 SQL 語句儲存。

修改好 my.cnf 後, 重新啟動 MySQL 便完成了。


頁: [1]
查看完整版本: MySQL 開啟 slow query log, 儲存執行慢的 SQL 語句