我在Mysql慢速查詢日誌中收到一個緩慢的查詢。 Mysql慢速查詢日誌顯示查詢需要超過4秒才能執行。如何測試查詢的實際執行時間?
我在phpmyadmin運行此查詢,它需要3秒鐘。當我再次運行它時,只需要0.0002秒。我想有一個數據庫緩存或什麼的。當我第二次運行它時,執行時間可能不準確。
對於這種情況(執行時間很快),我該如何測試查詢的實際執行時間?
我在Mysql慢速查詢日誌中收到一個緩慢的查詢。 Mysql慢速查詢日誌顯示查詢需要超過4秒才能執行。如何測試查詢的實際執行時間?
我在phpmyadmin運行此查詢,它需要3秒鐘。當我再次運行它時,只需要0.0002秒。我想有一個數據庫緩存或什麼的。當我第二次運行它時,執行時間可能不準確。
對於這種情況(執行時間很快),我該如何測試查詢的實際執行時間?
僅用於測試目的,你可以使用SQL_NO_CACHE
SELECT SQL_NO_CACHE * FROM `table` .....
其他方式,你可以設置query_cache_type
爲0當前會話
SET SESSION query_cache_type=0;
如果你是談論要防止MySQL緩存結果,您可以使用SQL_NO_CACHE
關鍵字。 (例如:SELECT SQL_NO_CACHE * FROM table1
)
在第二次執行之前,您可以稍微修改一下您的查詢。
所以下面兩個查詢被認爲是不同的查詢緩存:如果它包含像CONNECTION_ID一些特殊功能()
SELECT * FROM tbl_name
Select * from tbl_name
查詢不能被緩存。可以將此功能添加到您的查詢:
SELECT *,CONNECTION_ID() FROM tbl_name
[測量實際MySQL查詢時間]的可能重複(http://stackoverflow.com/questions/11274892/measuring-actual-mysql-query -時間) – Boaz