mysql不要使用查詢緩存

查詢緩存的失效非常頻繁,只要有對一個表的更新,這個表上所有的查詢緩存都會被清空。因此很可能你費勁的把結果存起來,還沒使用呢,就被更新全清空了。對於更新壓力大的數據庫來說,查詢緩存的命中率非常低。除非你的業務就是有一張靜態表,很長時間更新一次,比如,一個系統配置表,那這張表上的查詢才適合使用查詢緩存。
好在mysql也提供了這種按需使用的方式,你可以將參數query_cache_type設置成DEMAND 這樣對於默認的sql語句都不使用查詢緩存。而對於你確定要使用查詢緩存的語句,可以用SQL_CACHE顯示指定,像下面這個語句一樣:

select SQL_CACHE * from T where ID=10;

MySQL 8.0 版本直接將查詢緩存的整塊功能刪除。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章