专栏首页性能与架构如何有效使用Mysql的Query Cache

如何有效使用Mysql的Query Cache

须要根据Query Cache失效机制来判断哪些表适合使用Query哪些表不适合。

由于Query Cache的失效主要是因为Query所依赖的Table数据发生了变化,可能造成Query的Result Set已经有所改变而导致相关的Query Cache全部失效,那么就应该避免在查询变化频繁的Table的Query上使用,而应该在那些查询变化频率较低的Table的Query上使用。

MySQL中针对Query Cache有两个专用的SQL Hint(提示):SQL_NO_CACHE和SQL_CACHE,分别代表强制不使用Query Cache和强制使用Query Cache

可以利用这两个SQLHint,让MySQL知道我们希望哪些SQL使用Query Cache,哪些SQL不要使用。这样不仅可以让变化频繁的Table的Query浪费Query Cache的内存,同时还可以减少Query Cache的检测量

对于那些变化非常少,大部分时候都是静态的数据,可以添加SQL_CACHE的SQL Hint,强制MySQL使用QueryCache,从而提高该表的查询性能

有些SQL的Result Set很大,如果使用Query Cache很容易造成Cache内存的不足,或者将之前一些老的Cache冲刷出去。对于这一类Query有两种方法可以解决,一是使用SQL_NO_CACHE参数来强制它不使用Query Cache,每次都直接从实际数据中去查找,另一种方法是通过设定“query_cache_limit”参数值来控制Query Cache中所缓存的最大Result Set,系统默认为1MB(1 048 576)。当某个Query的Result Set大于“query_cache_limit”所设定的值时,QueryCache是不会缓存这个Query的

本文分享自微信公众号 - 性能与架构(yogoup)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2015-08-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • MySQL Query Cache实现原理

    MySQL的Query Cache实现原理实际上并不是特别复杂,简单来说就是将客户端请求的Query语句(仅限于SELECT类型的Query)通过一定的hash...

    dys
  • Stack Overflow 开发者调查报告

    今天看了Stack Overflow 开发者调查统计结果,有几个数据感到意外,没有想到 1. JS已经火到不行 在最受开发者欢迎的语言中,JS继续领先,这倒...

    dys
  • Mysql优化中Profiling的使用

    要想优化一条Query,就须要清楚这条Query的性能瓶颈到底在哪里,是消耗的CPU计算太多,还是需要的IO操作太多?要想能够清楚地了解这些信息,可以通过Que...

    dys
  • Python中如何把redis取出的数据去掉b'

    这个问题是最近在写爬虫的时候遇到的,本次使用了redis对爬取的数据进行存储,便于对数据进行二次清洗。存入的过程是非常顺利的。但是在二次数据清洗时,在redis...

    小白程序猿
  • 利用 Nginx 反向代理搭建本地 yum 服务器

    在政府,医院等单位有网络安全要求,对内外网进行物理隔离,然而内网主机无法访问互联网下载安装包,通过Nginx 反向代理搭建本地yum服务器实现内网主机安装包下载...

    Kevin song
  • 宏观经济指标分析与数据可视化——PMI

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    钱塘小甲子
  • .Net微服务实践(三):Ocelot配置路由和请求聚合

    在上篇.Net微服务实践(二):Ocelot介绍和快速开始中我们介绍了Ocelot,创建了一个Ocelot Hello World程序,接下来,我们会介绍Ocl...

    我思故我在
  • 2D景观转3D风景大片,无惧复杂光线与遮挡,人类离「躺着旅行」的梦想又近了一步

    上班的时候想旅行,休假的时候想躺着,这是大多数年轻人的状态。如果能够躺在床上旅行,岂不美哉?

    机器之心
  • 价格一个月“腰斩”,比特币现金小费机器人“Tippr”却火了

    比特币从巅峰时期的近2万美元,到跌破1万美元大关,仅仅用了一个月时间,正当大家怀疑比特币的泡沫是否已破裂时,最近,一种新的比特币现金(BCH)小费机器人“Tip...

    机器人网
  • 手把手教你,嘴对嘴传达------Apache网页优化

    在企业中,部署Apache后会有默认的配置参数,如果不及时进行优化配置,在当今互联网时代,会引发网站很多问题 为了适应企业需求,就需要考虑如何提升Apache...

    不吃小白菜

扫码关注云+社区

领取腾讯云代金券