2012-11-01 137 views
1

我想在MySQL上使用查詢緩存,但我懷疑如果我更新或插入已經緩存的查詢數據,緩存是否會反映它?查詢緩存mysql

它只返回緩存查詢還是隻更新查詢?

回答

0

MySQL的查詢緩存自動工作。你不應該擔心它會變得不一致。

一般而言,更新具有使將會受到影響的任何緩存查詢無效的效果。

+0

好吧,我有500000+行靜態表,這會是最好的?使用memchached或查詢緩存或將存儲引擎更改爲內存(散列) – user1777733

+0

這實際上取決於您要提取的數據的類型以及它的使用方式。 Memcached是一個偉大的通用緩存,具有緩存格式化結果的優勢,而不僅僅是原始數據。 MySQL查詢緩存更易於使用,它是自動的,但不夠靈活。大多數應用程序使用Memcached來保存HTML,XML或JSON塊以避免重複格式化相同的數據。 – tadman

+0

我使用select * from產品; qry此產品tbl會長時間靜態,現在你可以告訴我嗎?哪個選項會對我更好。我更喜歡內存存儲和qry緩存這個qry ...可以嗎? – user1777733

0

查詢緩存不會返回陳舊的數據。當表被修改時,查詢緩存中的任何相關條目都會被刷新。

請參考文檔的完整參考 - MySql Query Cache