Mysql 查询缓存(Query Cache)详细介绍

本文详细介绍了MySQL查询缓存的功能、开启关闭方法、状态查看及使用注意事项。查询缓存能提高查询效率,但也会因表变化导致缓存失效,增加系统负担。特别是对于InnoDB表,长时间事务会影响缓存命中率。建议适当设置查询缓存大小以避免全局锁带来的负面影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、功能说明

MySQL查询缓存保存查询返回的完整结果。当查询命中该缓存,会立刻返回结果,跳过了解析,优化和执行阶段。 
查询缓存会跟踪查询中涉及的每个表,如果这写表发生变化,那么和这个表相关的所有缓存都将失效。 
但是随着服务器功能的强大,查询缓存也可能成为整个服务器的资源竞争单点。 

二、开启、关闭方法

 查看当前版本是否支持QC功能:

SHOW VARIABLES LIKE 'have_query_cache';

若显示YES,则支持;反之不支持

# Variable_name, Value
'have_query_cache', 'YES'

查看是否已开启:

SHOW VARIABLES LIKE '%query_cache%';

若query_cache_size不为0,query_cache_type = ON 则已开启

MariaDB [(none)]> SHOW VARIABLES LIKE '%query_cache%';
+------------------------------+-----------+
| Variable_name                | Value     |
+------------------------------+-----------+
| have_query_cache             | YES       |
| query_cache_limit            | 1048
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值