有沒有什麼辦法可以清除 mysql 查詢緩存而不重新啓動mySQL服務器?清除MySQL查詢緩存而不重新啓動服務器
回答
我相信你可以使用...
RESET QUERY CACHE;
...如果你正在運行的用戶重裝權利。或者,你可以整理通過查詢緩存...
FLUSH QUERY CACHE;
見MySQL手冊的Query Cache Status and Maintenance部分獲取更多信息。
根據documentation,這應該這樣做...
RESET QUERY CACHE
在我的系統(Ubuntu 12.04)中,我發現RESET QUERY CACHE
甚至重啓mysql服務器還不夠。這是由於memory disc caching。
每個查詢後,我清潔光盤高速緩存在終端:
sync && echo 3 | sudo tee /proc/sys/vm/drop_caches
,然後重新在mysql客戶端查詢緩存:
RESET QUERY CACHE;
請注意,MySQL中的「查詢緩存」不是一般的頁面/塊緩存。它是查詢_results_的緩存。不總是有用 - 我們不使用它。 http://dev.mysql.com/doc/refman/5.6/en/query-cache.html – 2013-10-11 18:47:33
@phil_w是否有一種方法可以重置mysql使用的頁面/塊的緩存,而無需重新啓動mysql並清除(linux) OS緩存? – matanster 2014-12-10 17:30:41
- 1. 如何在不重新啓動服務器的情況下清除coldfusion查詢緩存?
- 2. 重新啓動django服務器時清除緩存的最佳位置
- 3. 「清除內存」+ appWidget崩潰後服務不會重新啓動
- 4. 清除Apache服務器內存緩存
- 5. 需要清除MySQL InnoDB鎖而不重新啓動數據庫
- 6. 如何重新啓動mysql服務器?
- 7. 重新生成Django ChoiceField而不重新啓動服務器
- 8. 當重新啓動活動時從字體緩存清除
- 9. 重新啓動Tomcat服務器時自動刪除MySQL表
- 10. 重新啓動服務器後重新啓動WCF服務
- 11. 重新啓動服務器後保留緩存的數據
- 12. 在Node.js中更新文件而不重新啓動服務器
- 13. 有選擇地清除MySQL查詢緩存(只清除一個特定查詢)
- 14. appfabric緩存,而不是查詢sql服務器
- 15. 導軌和重新加載緩存,而不重新啓動服務器和第三方工具
- 16. 重新啓動服務器後重新啓動Docker容器
- 17. 將modx移至新服務器 - 清除緩存
- 18. 清除服務器緩存,以便Flash庫將自動更新新圖像
- 19. 一般錯誤:1651查詢緩存被禁用;使用query_cache_type = 1重新啓動服務器以啓用它
- 20. 啓動pentaho雙服務器緩存
- 21. 替換WCF服務庫,而不重新啓動服務
- 22. 重新啓動應用程序而無需重新啓動服務器?
- 23. MySQL刷新查詢緩存
- 24. 重新部署彈簧引導服務而不重新啓動?
- 25. 重新加載Freeradius客戶端而不重新啓動服務
- 26. 清除鎖定並重新啓動Mongo服務
- 27. 編輯導軌gem而不重新啓動服務器
- 28. 編輯節點js文件而不重新啓動服務器
- 29. Apache服務器而不是重新啓動在Ubuntu 14.04
- 30. 清除MYSQL緩慢查詢日誌 - Rails
RESET QUERY CACHE將清除查詢緩存,但需求RELOAD權限。 FLUSH QUERY CACHE不會清除查詢緩存,只是將其碎片整理,留下緩存的查詢結果 – carpii 2012-05-10 21:55:38
這真的有所幫助。我們使用帶有10個連接的池的MySQL使用NodeJS。我們正面臨數據被一個連接寫入並被其他人讀取的問題,並且正在大量緩存。這一個似乎有很大的幫助。 Thx, – psuhas 2016-10-23 01:43:21
出於某種原因,'RESET QUERY CACHE'實際上並沒有爲我清除它。另外,MySQL服務器重啓不起作用。一個明確的'SELECT SQL_NO_CACHE'可以解決這個問題,但不是'RESET QUERY CACHE'。 sync && echo 3 | sudo tee/proc/sys/vm/drop_caches'也沒有幫助。 – 2017-08-24 23:41:16