除了運行它以完成...有什麼方法可以告訴MySQL查詢需要運行多久?
是否有某種進展,您可以監視以查看正在處理您的查詢時會發生什麼操作,這會讓您瞭解它將花費多長時間,或者至少步驟如何,發生了哪些步驟,哪些仍然存在?
如果是,那麼這個相同的工具是否可以幫助您確定查詢花費時間最長的部分?
我想更好地理解什麼使得某些查詢需要比其他查詢更長的時間。
除了運行它以完成...有什麼方法可以告訴MySQL查詢需要運行多久?
是否有某種進展,您可以監視以查看正在處理您的查詢時會發生什麼操作,這會讓您瞭解它將花費多長時間,或者至少步驟如何,發生了哪些步驟,哪些仍然存在?
如果是,那麼這個相同的工具是否可以幫助您確定查詢花費時間最長的部分?
我想更好地理解什麼使得某些查詢需要比其他查詢更長的時間。
這就是所謂的分析:http://dev.mysql.com/tech-resources/articles/using-new-query-profiler.html
MySQL有一個內置的爲您服務。 :)
偉大的鏈接。該文件是完美的。 – 2011-05-18 16:39:15
你可以使用explain
來要求MySQL告訴你爲什麼一個函數需要儘可能多的時間。
http://dev.mysql.com/doc/refman/5.0/en/explain.html
的想法是,它會告訴你的東西它使用了索引,等等,這將幫助你然後優化或者查詢或使人們更快表等。
這不是直接回答你的問題,因爲它不會告訴你查詢的實時進度,這是你要求的,但它直接回答你問題的最後一句話,並且所以對於你真正想知道的信息,實際上它可能比任何實時進度報告更有用。
不一定是您意思的意義上的工具,但您可以運行'EXPLAIN SELECT ...'(在此處插入您的查詢)以查看您可能遇到哪些瓶頸。 – 2011-05-18 16:11:40