2011-08-17 74 views
6

我看到有一個不錯的選擇如何啓用日誌慢速查詢和查詢沒有索引:如何記錄沒有索引的mySQL查詢?

SET GLOBAL log_queries_not_using_indexes=1; 
    SET GLOBAL log_slow_queries=1; 

OK,OK,但似乎在我在my.cnf配置文件中指定的相同的日誌文件都寫:

[mysqld] 
    long_query_time   = 1 
    log-slow-queries  = /var/log/mysql/mysql-slow.log 

我用mysqldumpslow看到最慢的查詢,但我需要做的,單獨看到,查詢沒有索引?

你能幫我嗎?

預先感謝您!

最佳,

的Jakub

+0

我認爲你必須一次完成1步。 –

+0

順便說一句,檢查出mysqlsla作爲日誌分析器:http://hackmysql.com/mysqlsla – Dor

回答

7

你不能。日誌文件是一個文本文件,您無法從中推斷出查詢在執行時是否使用了索引。 此外,選項log-queries-not-using-indexes不一定日誌誰不使用索引的查詢,see

如果您使用的是帶有慢查詢日誌啓用該選項,查詢 按照預期檢索所有行已記錄。請參閱第5.2.5節, 「慢速查詢日誌」。 此選項不一定表示不使用 索引。例如,使用完整索引掃描的查詢使用 索引,但會被記錄,因爲索引不會限制 的行數。