Query cache(高速查询缓冲池)

本文探讨了MySQL查询缓存(QC)的配置与优化,包括如何通过查看关键状态值来判断缓存设置是否合理,以及如何根据QCache Hits、QCache LowMem Prunes等指标调整缓存大小和单位大小,以提升查询效率。同时介绍了如何关闭查询缓存及注意事项。

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

Mysql高速查询缓存池(简称QC

select语句和查询结果放在缓冲区中,若有同样的select 语句(区分大小写),将直接从缓冲区中读取结果;

Show global status likeQcache_% 查看QC可以知道QC设置时候合理;

如果QCACHE_LOWMEM_PRUNES的值非常大,则表明经常出现缓冲不够的情况;

如果QACHE_HITS的值非常大,则表明查询缓冲使用非常频繁,此时需要增加缓冲大小;

如果QCACHE_HITS的值不大则表明查询重复率低,这种情况下使用查询缓冲反而会影响效率,那么可以考虑不用查询缓冲;

select语句中加入SQL_NO_CACHE可以明确表示不使用查询缓冲;

例如SELECTsql_no_cache * from xx where yy

Query_cache_limit=2M不缓冲超过2M的查询结果;

Query_cache_min_res_unit=512k,设置每个QC单元大小,提高QC利用率(qcache_queries_in_cache不大,但Qcache_free_memory较大,就需要减少  qcache_queries_in_cache。

建议:

query_cache:有全局的锁,查询结果有变更,表变更SQL更新都要更新查询缓存,锁的粒度大 建议关闭查询缓存

关闭查询缓存2个参数:

query_cache_type=0

query_cache_size=0


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值