我针对MySQL运行了以下sql:
SHOW STATUS LIKE 'Qcache%';
这是我得到的:
Qcache_free_blocks 0
Qcache_free_memory 0
Qcache_hits 0
Qcache_inserts 0
Qcache_lowmem_prunes 0
Qcache_not_cached 0
Qcache_queries_in_cache 0
Qcache_total_blocks 0
我不明白为什么我这样做是因为我仔细检查了查询缓存是否正确启用,如下所示:
SHOW VARIABLES LIKE 'have_query_cache';
Variable_name Value
have_query_cache YES
有人可以帮忙吗?
答案 0 :(得分:4)
您是否阅读过the MySQL Query Cache Configuration page?
E.g。
使用标准MySQL二进制文件时,即使禁用了查询缓存,此值也始终为YES。
或
要设置查询缓存的大小,请设置query_cache_size系统变量。将其设置为0将禁用查询缓存。默认大小为0,因此默认情况下禁用查询缓存。为了显着减少开销,如果您不使用查询缓存,也可以使用query_cache_type = 0启动服务器。