1、启用MySQL查询缓存好处:

可以极大地减低数据库服务器的CPU使用率,实际使用情况是:开启前CPU使用率120%左右,开启后降到了10%。

2、查看查询缓存情况:

mysql> show variables like ‘%query_cache%’;

(query_cache_type 为 ON 表示已经开启)

+——————————+———-+

| Variable_name | Value |

+——————————+———-+

| have_query_cache | YES |

| query_cache_limit | 1048576 |

| query_cache_min_res_unit | 4096 |

| query_cache_size | 20971520 |

| query_cache_type | ON |

| query_cache_wlock_invalidate | OFF |

+——————————+———-+

3、如果不是ON,修改配置文件以开启查询缓存:

vi /etc/my.cnf

[mysqld]中添加:

query_cache_size = 20M

query_cache_type = ON

4、重启mysql服务:

service mysql restart

5、查看缓存使用情况:

mysql> show status like ‘qcache%’;

+————————-+———-+

| Variable_name | Value |

+————————-+———-+

| Qcache_free_blocks | 83 |

| Qcache_free_memory | 19811040 |

| Qcache_hits | 3108196 |

| Qcache_inserts | 757254 |

| Qcache_lowmem_prunes | 20720 |

| Qcache_not_cached | 47219 |

| Qcache_queries_in_cache | 47 |

| Qcache_total_blocks | 276 |

+————————-+———-+

6、其中各个参数的意义如下:

Qcache_free_blocks:缓存中相邻内存块的个数。数目大说明可能有碎片。FLUSH QUERY CACHE会对缓存中的碎片进行整理,从而得到一个空闲块。

Qcache_free_memory:缓存中的空闲内存。

Qcache_hits:每次查询在缓存中命中时就增大

Qcache_inserts:每次插入一个查询时就增大。命中次数除以插入次数就是不中比率。

Qcache_lowmem_prunes:缓存出现内存不足并且必须要进行清理以便为更多查询提供空间的次数。这个数字最好长时间来看;如果这个 数字在不断增长,就表示可能碎片非常严重,或者内存很少。(上面的 free_blocks和free_memory可以告诉您属于哪种情况)

Qcache_not_cached:不适合进行缓存的查询的数量,通常是由于这些查询不是 SELECT 语句或者用了now()之类的函数。

Qcache_queries_in_cache:当前缓存的查询(和响应)的数量。

Qcache_total_blocks:缓存中块的数量。

7、对于某些不想使用缓存的语句,可以这样使用:

select SQL_NO_CACHE count() from t_user where tell = ‘153*******‘;

如何启用MySQL查询缓存?相关推荐

  1. MySQL查询缓存前世今生

    MySQL查询缓存 前言 QueryCache介绍 SQL共享 QueryCache配置 通常开启QueryCache方式 QueryCache使用 禁用queryCache场景 开启queryCac ...

  2. mysql清除缓存_清空 MySQL 查询缓存

    MySQL 查询缓存 在 SQL 调优的过程中,发现原本很慢的一条 SQL(将近 1 分钟) 在第二次运行时, 瞬间就完成了(0.04sec). 这是因为 MySQL 自带的缓存机制,将查询结果进行缓 ...

  3. MySQL高级-MySQL查询缓存优化

    MySQL查询缓存优化 1 概述 2 操作流程 3 查询缓存配置 4 开启查询缓存 5 查询缓存SELECT选项 6 查询缓存失效的情况 1 概述 开启Mysql的查询缓存,当执行完全相同的SQL语句 ...

  4. mysql 查询缓存设置_MySQL查询缓存设置 提高MySQL查询性能

    从 MySQL4开始,出现了QueryCache查询缓存,如果使用了QueryCache,当查询接收到一个和之前同样的查询,服务器将会从查询缓存种检索结果,而不是再次分析和执行上次的查询.这样就大大提 ...

  5. 详解MySQL查询缓存

    查询缓存是指存储使用SELECT语法查询到的返回到客户端的文本.当相同的请求再次发生时,会从查询缓存中获取数据,而非再执行一遍查询.查询缓存是共享Session会话的,所以一个客户端的请求可能与另一个 ...

  6. mysql查询缓存优化配置_mysql 优化之查询高速缓冲配置 小记

    如果查询缓存大小设置为大于0,query_cache_type变量影响其工作方式.这个变量可以设置为下面的值: ·         0或OFF将阻止缓存或查询缓存结果. ·         1或ON将 ...

  7. linux mysql 查看缓存_详解MySQL查询缓存

    查询缓存是指存储使用SELECT语法查询到的返回到客户端的文本.当相同的请求再次发生时,会从查询缓存中获取数据,而非再执行一遍查询.查询缓存是共享Session会话的,所以一个客户端的请求可能与另一个 ...

  8. php mysql 查询缓存_mysql 查询缓存使用详解

    MySQL server 有一个重要的特征:查询缓存(Query Cache). 当在使用中,查询缓存会存储一个 SELECT 查询的文本与被传送到客 户端的相应结果.如果之后接收到一个同样的查询,服 ...

  9. MySQL查询缓存设置提高MySQL查询性能

    首先看看MSYQL逻辑框架:图片来自高性能mysql 如果使用了QueryCache,当查询接收到一个和之前同样的查询,服务器将会从查询缓存中检索结果,而不是再次分析和执行相同的查询.这样就能大大提高 ...

  10. mysql 查询缓存设置

    1.首先查看mysql的缓存配置 SHOW VARIABLES LIKE '%query_cache%'; +----------+---+ | Variable_name | Value | +-- ...

最新文章

  1. R语言Logistic回归模型案例:低出生婴儿体重的影响因素分析(列线图、校准曲线)
  2. iOS MKMapView 地图视图
  3. 利用Arduino Nano 对于另外的Arduino控制板下载Bootloader
  4. Nginx容器日志收集方案fluentd+elasticsearch+kilbana
  5. sql server 2008语言基础: 集合
  6. java servicefactory_Java DirectoryServiceFactory.getDirectoryService方法代碼示例
  7. 浅析网站SEO与网站建设密不可分的关系
  8. delphi打开word文件(刚刚学会的嘿嘿~)
  9. 前端学习(805):简单数据类型和复杂数据类型
  10. spring cloud(2)---微服务写的最全的一篇文章
  11. 流量策略和整型--整型篇
  12. oracle官网下载plsql,Oracle、OracleClient、PLSQL下载安装配置(64位)
  13. 防卒指南:996+健身≈猝死
  14. android popupwindow 消失动画,PopupWindow动画结束后dismiss崩溃解决
  15. Docker学习——docker入门
  16. JAVA扫码点餐(1)-项目介绍
  17. 玩转数据可视化之R语言ggplot2:(六)统计变换绘图:包括加权绘图、数据分布图、曲面图、图形重叠处理等
  18. 一个用python实现的东方时尚(驾校)抢课程序
  19. vmbox-android
  20. citrix ADC VPX Models整理

热门文章

  1. 应该了解的数据库系统高性能利器-WAL
  2. php 自动验证表单类,ThinkPHP中create()方法自动验证表单信息
  3. java实现阿里云文件存储OSS
  4. 百度网盘可以打飞机,这么野吗???
  5. Win 7 修改开机密码,使用F8修复提前终止导致蓝屏
  6. 职教云JAVA课程答案_智慧职教作业的答案,云课堂智慧职教java职业证书题库答案,职教云智慧职教题库答案...
  7. Java 21即将发布,探索Java 21新特性和改进
  8. 【java】编程的四大特征和六大原则
  9. DNS bind部署记录
  10. 正则表达式提取电话号码