MySQL-查詢結果緩存

一、緩存必備:

SQL文相同,數庫表字段構、記錄不變,大小寫不敏感,字符集敏感

二、提緩存:

   緩存配高、分區

三、多個應用多配置

四、SELECT SQL_NO_CACHE/SQL_CACHE

   my.ini---------------------------------------
 
   show variables like '%cache%';

   --query_cache_type(0[off], 1[on], 2[demand]

   have_query_cache: 爲YES表示緩存開啓

  query_cache_type: on表示默認使用緩存

  query_cache_limit: 能緩存的單條查詢結果容量最大值, 超過此值則不會緩存

  query_cache_size: 查詢緩存總共佔內存空間大小, 通常設置爲256M爲一個不錯的大小



   show status like '%cache%';sql


   Qcache_free_blocks: 查詢緩存中空閒的block數目

  Qcache_free_memory: 空閒的內存總量

  Qcache_cache_hits: 命中的次數

  Qcache_cache_inserts: 向緩存中插入新的緩存結果的次數(也就是沒有命中的次數)

  Qcache_lowmem_prunes: 當 Query Cache內存容量不夠,須要從中刪除老的單條查詢結果以給新的查詢結果對象使用的次數

  Qcache_not_cached: 沒有被緩存的SQL數, 包括沒法被緩存的SQL以及因爲query_cache_type設置的不會被緩存的SQL

  Qcache_queries_in_cache: 目前在內存中的SQL數量

  Qcache_total_blocks: 內存中總的Block數量緩存

相關文章
相關標籤/搜索