2008-09-28 32 views
2

有沒有什麼方法可以查看每天在MySQL上花費最多時間查詢哪種查詢?MySQL主要做什麼?

+0

http://stackoverflow.com/questions/20263/is-there-a-profiler-equivalent-for-mysql#82757 – 2008-09-28 22:41:30

回答

5

是,MySQL能夠創建一個慢查詢日誌。你需要與--log-slow-queries標誌啓動mysqld

mysqld --log-slow-queries=/path/to/your.log 

然後你就可以解析使用mysqldumpslow日誌:

mysqldumpslow /path/to/your.log 

更多信息是在這裏(http://dev.mysql.com/doc/refman/5.0/en/slow-query-log.html)。

1

這取決於你的意思是'大多數時間'。可能有幾千甚至幾十萬個查詢,每個查詢的時間很少,但消耗了90%的CPU/IO帶寬。或者可能有幾個巨大的異常值。 有用於性能監控和分析的工具,例如內置的PERFORMANCE_SCHEMA,來自Oracle/MySQL團隊的企業工具以及可以跟蹤整個應用程序堆棧性能的newrelic等在線服務。