TMP TABLE 與 TABLE CACHE
當一個查詢所消耗的記憶體超過配置的 BUFFER 時或者一些其他原因,MYSQL 會開啟暫存 TABLE,暫存 TABLE 先放在記憶體中,記憶體不足再利用 DISK , 用法就像是 L1、L2、L3 CACHE 。 table_cache 的參數定義了能夠 CACHE 多少個TABLE , tmp_table_size 定義了開在記憶體中的暫時 TABLE 有多大,也就是說,這是個全域的記憶體配置。TMP TABLE超過這個大小,就會被寫到硬碟上。
要比對這個參數是否太大要比較 SHOW STATUS 中的 open_tables 跟 opened_tables ,前者是目前所開啟的 TABLE 數,後者是曾經開啟的 TABLE 數,如果後者比前者大很多,表示 TABLE CACHE 太小,可以試試放大。
- 關鍵字 : TABLE, CACHE, 記憶體中, 後者, 記憶體配置, 者一些其, 目前所開啟, 當一, 用法就, 查詢所消耗, 會開啟暫存, 曾經開啟, 暫存, 就會, 寫到硬碟上, 定義, 太小, 大小, 多少, 多大
0 0
2009-05-20T13:28:13+0000