博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于QueryCache的一次打脸
阅读量:7143 次
发布时间:2019-06-29

本文共 774 字,大约阅读时间需要 2 分钟。

背景问题

  前一段时间给一套MySQL数据库加上了监控,运行一段时间后有人反馈监控到的insert,update,delete,select的数量中select的数量有像比

  本应该的量少了不少!

 

  我用的是Com_select这个status来监控的select语句的数量,应该不会有什么差错呀;没想到呀,没想到!那个数据库实例是开启了Query

  cache的,所以这个就扎心啦! 这种情况下Com_select只是记录了select语句中没有命中Query_cache的那一部分。

 

默认情况下的select统计方式

  默认情况下没有开启Query_cache所以我们可以用Com_select这个status来监控MySQL处理的select语句总数;

 

  所以总的处理成功的select语句的数量就是 Com_select的值

 

Query_cache开启情况下select的统计方式

  在Query_cache开启的情况下针对select语句的统计要分两种情况进行讨论

  1): 如果这条select语句命中了Query_cache那么Qcache_hits这个status就会加1,Com_select不受影响

  2):如果这条select语句没有命中Query_cache那么Com_select这个status加1,Querycache_hit不受影响

 

  所以总的select语句的数量就是Com_select + Querycache_hits 的值

 

  Query cache的命中率就是 Querycache_hits / (Com_select + Querycache_hits)

 

 

 

 

 

 

 

-----

转载于:https://www.cnblogs.com/JiangLe/p/9734485.html

你可能感兴趣的文章
控制input输入格式
查看>>
linux系统上安装java
查看>>
38.进程管理与计划任务---PS、Top、Crontab
查看>>
0301_互连模拟
查看>>
一次XEN启动中的错误捕获
查看>>
重大里程碑:顶级科学家达成23条人工智能发展原则!
查看>>
esxi嵌套华为Fusioncomputer安装VRM几个关键步骤。
查看>>
/etc/init.d/mysqld:line 260:my_print_defaults:command not found
查看>>
DNS设置引起的登录延迟
查看>>
*** $CI =& get_instance() 用法:关于CodeIgniter中get_instance() 函数
查看>>
简单的ISIS协议的路由重分发实验详解
查看>>
Python模块学习--shutil和hashlib和json
查看>>
Linux防火墙iptables学习笔记(一)入门要领
查看>>
xshell 秘钥配对
查看>>
saltstack之SLS文件
查看>>
Redhat linux下cvs的安装配置
查看>>
cxgrid合并值相同的某列
查看>>
增量备份和差异备份的区别
查看>>
纯JS操作获取桌面路径方法
查看>>
thinkphp数据库添加表单提交的数据
查看>>