MySQL慢查詢就是在日志中記錄運行比較慢的SQL語句,這個功能需要開啟才能用。
在MySQL的配置文件my.cnf中寫上:
long_query_time = 10
log-slow-queries = /var/lib/mysql/mysql-slow.log
long_query_time是指執行超過多久的SQL會被日志記錄下來,這里是10 秒。
log-slow-queries設置把日志寫在那里(例子中慢查詢日志會寫到文件/var/lib/mysql/mysql-slow.log中),為空的時候,系統會給慢查詢日志賦予主機名,并加上slow.log。如果設置了參數log-long-format ,那么所有沒有使用索引的查詢也將被記錄。
這是一個非常有用的日志。它對于性能的影響不大(假設所有查詢都很快),并且強調了那些最需要注意的查詢(丟失了索引或索引沒有得到最佳應用)。