如果查询缓存大小设置为大于0,query_cache_type变量影响其工作方式。这个变量可以设置为下面的值:

·         0或OFF将阻止缓存或查询缓存结果。

·         1或ON将允许缓存,以SELECT SQL_NO_CACHE开始的查询语句除外。

·         2或DEMAND,仅对以SELECT SQL_CACHE开始的那些查询语句启用缓存。

设置query_cache_type变量的GLOBAL值将决定更改后所有连接客户端的缓存行为。具体客户端可以通过设置query_cache_type变量的会话值控制它们本身连接的缓存行为。例如,一个客户可以禁用自己的查询缓存,方法如下:

mysql> SET SESSION query_cache_type = OFF;

要控制可以被缓存的具体查询结果的最大值,应设置query_cache_limit变量。 默认值是1MB。

当一个查询结果(返回给客户端的数据)从查询缓冲中提取期间,它在查询缓存中排序。因此,数据通常不在大的数据块中处理。查询缓存根据数据排序要求分配数据块,因此,当一个数据块用完后分配一个新的数据块。因为内存分配操作是昂贵的(费时的),所以通过query_cache_min_res_unit系统变量给查询缓存分配最小值。当查询执行时,最新的结果数据块根据实际数据大小来确定,因此可以释放不使用的内存。根据你的服务器执行查询的类型,你会发现调整query_cache_min_res_unit变量的值是有用的:

·         query_cache_min_res_unit默认值是4KB。这应该适合大部分情况。

·         如果你有大量返回小结果数据的查询,默认数据块大小可能会导致内存碎片,显示为大量空闲内存块。由于缺少内存,内存碎片会强制查询缓存从缓存内存中修整(删除)查询。这时,你应该减少query_cache_min_res_unit变量的值。空闲块和由于修整而移出的查询的数量通过Qcache_free_blocks和Qcache_lowmem_prunes变量的值给出。

·          如果大量查询返回大结果(检查 Qcache_total_blocks和Qcache_queries_in_cache状态变量),你可以通过增加query_cache_min_res_unit变量的值来提高性能。但是,注意不要使它变得太大(参见前面的条目)。

mysql查询缓存优化配置_mysql 优化之查询高速缓冲配置 小记相关推荐

  1. mysql数据库缓存为多久_mysql数据库查询缓存总结

    概述 查询缓存(Query Cache,简称QC),存储SELECT语句及其产生的数据结果.闲来无事,做一下这块的总结,也做个备忘! 工作原理 查询缓存工作原理如下: 缓存SELECT操作的结果集和S ...

  2. mysql最大并行用户设置_mysql 优化配置

    1.目的: 通过根据服务器目前状况,修改Mysql的系统参数,达到合理利用服务器现有资源,最大合理的提高MySQL性能. 2.服务器参数: 32G内存.4个CPU,每个CPU 8核. 3.MySQL目 ...

  3. mysql 分表后排序_MySQL优化分库分表,为什么要分表,分表以后如何进行排序查询,业务如何设计?...

    昨天面试新人的时候,遇到了这么一个问题,按照自己的想法大体聊了一些,但大多是感性的,并没有完整的了解why and how. 今天查了一些相关的资料,包括<MySQL性能调优与架构设计>. ...

  4. 优化mysql的21个建议_MySQL优化小建议

    MySQL优化小建议 洛逸 发布于 2019-11-04 12:03 背景 "那啥,你过来一下!" "怎么了?我代码都单元测试了的,没出问题啊!"我一脸懵逼跑到 ...

  5. mysql优化方法_mysql优化方案总结

    u       Mysql数据库的优化技术 对mysql优化时一个综合性的技术,主要包括 a: 表的设计合理化(符合3NF) b: 添加适当索引(index) [四种: 普通索引.主键索引.唯一索引u ...

  6. mysql优化要点_MySQL优化技巧总结

    MySQL优化的几个大方向 ① 硬件优化 ② 对MySQL配置参数进行优化(my.cnf)此优化需要进行压力测试来进行参数调整 ③ SQL语句方面的优化 ④ 表方面的优化 硬件优化 cpu,内存,硬盘 ...

  7. mysql优化问题?_MYSQL优化问题

    执行计划与执行明细 1,Explain:可以让我们查看MYSQL执行一条SQL所选择的执行计划: 1,ID:执行查询的序列号: 2,select_type:使用的查询类型 1,DEPENDENT SU ...

  8. mysql 优化版_MySQL优化(超完整版)(一)

    一. MySQL的优化 前言: MySQL数据库的优化模块: - 数据库的设计-三大范式 - 数据库的索引:唯一索引.主键索引.聚合索引.复合索引.默认索引 - SQL优化 - 分库分表 - 读写分离 ...

  9. 对mysql优化关注_MySQL优化看这篇就对了

    我们在面试的时候经常被问到你如何对数据库优化?动不动就分库分表,但是实际上有几个有分库分表的经验呢?下面我们将介绍优化数据库的各个阶段. 一.SQL语句优化 sql语句的优化是我们优化数据库的第一个阶 ...

最新文章

  1. 让你爽到飞起的【懒人插件AutoScssStruct4Vue】VSCode根据template的标签目录一键生成SCSS/LESS结构,敏捷开发必备插件!!!
  2. 25岁Nature狂魔八连杀!曹原再次“一作+通讯”发Nature!
  3. Bitcoin.com| 比特币现金2019·年度回顾
  4. 第三十三讲 非线性方程组化为一阶方程
  5. 使用C语言读取properties文件V1.0
  6. 1.Consul 简介和环境搭建
  7. Google推出“Google实验室” Ad Innovations
  8. 环境准备 Ubuntu Docker
  9. Nexus-NuGet私有仓库服务搭建(一)
  10. springboot基于微信小程序的在线考试系统
  11. 在launcher中隐藏app图标
  12. Go语言和php个和lua,当 Go 遇上了 Lua
  13. 揭秘-Android刷量有多容易 1
  14. 这几个批量文件重命名工具,一个比一个好用
  15. 从单体迁移至微服务,需要有足够的理由和勇气
  16. 当中国AI开始远洋,我们能从百度海外输入法的巴展大秀上学到什么?
  17. CCPC 桂林站总结
  18. un12.23:在jQuery中添加滚动条。
  19. php读取word里的内容
  20. html 怎么让div卷角,css实现简约的纸张卷角效果

热门文章

  1. 一文搞懂如何使用Node.js进行TCP网络通信
  2. 线程、多线程和线程池,看完这些你就能全部搞懂了
  3. Go语言微服务开发框架:Go chassis
  4. 敏捷转型谁先动:老总,项目经理or团队
  5. 疫情当前,企业“逆势而上”还需“上云”加速
  6. DevOps组织如何有效地实施MSA
  7. 怎样在word中同时输入上下标
  8. 计算最短路径的A* 算法简介
  9. Bootstrap开篇理解:
  10. ai字体素材网站_综合网站大全,字体、设计、图片各种素材管够,资源丰富你懂得...