/*sql
名称解释缓存
sql_cache 查询结果存入缓存(当query_cache_type=DEMAND时有效)ide
sql_no_cache 查询结果不存入缓存函数
query_cache_size 表示缓存的大小内存
query_cache_type 查询缓存会话类型(0=OFF关闭查询缓存1=ON开启2=DEMAND手动经过sql_cache和sql_no_cache控制)it
query_cache_limit 指定单个查询可以缓存的最大查询结果class
query_cache_min_res_unit 为系统分配的最小缓存块大小,默认是4KB,这个值的大小和碎片的产生有直接关系配置
query_cache_wlock_invalidate ON/OFF当查询表被锁住时,若是查询命中缓存,是否还能直接返回命中结果date
*/im
/*当前查询缓存配置状况*/
SHOW VARIABLES LIKE '%query_cache%'
/*
重置查询缓存*/
RESET QUERY CACHE
/*查询缓存碎片整理*/
FLUSH QUERY CACHE
/*
当前查询缓存状况
Qcache_free_blocks:缓存中相邻内存块的个数。数目大说明可能有碎片。FLUSH QUERY CACHE会对缓存中的碎片进行整理,从而获得一个空闲块。
Qcache_free_memory:缓存中的空闲内存。
Qcache_hits:每次查询在缓存中命中时就增大
Qcache_inserts:每次插入一个查询时就增大。命中次数除以插入次数就是不中比率。
Qcache_lowmem_prunes:缓存出现内存不足而且必需要进行清理以便为更多查询提供空间的次数。这个数字最好长时间来看;若是这个 数字在不断增加,就表示可能碎片很是严重,或者内存不多。(上面的 free_blocks和free_memory能够告诉您属于哪一种状况)
Qcache_not_cached:不适合进行缓存的查询的数量,一般是因为这些查询不是 SELECT 语句或者用了now()之类的函数。
Qcache_queries_in_cache:当前缓存的查询(和响应)的数量。
Qcache_total_blocks:缓存中块的数量。
*/
SHOW STATUS LIKE 'qcache%'