使用数据存储的时候,总会出现一些突然超时的情况,幸运的话,数据存储提供了监控平台,我们进入监控平台能假装观察点什么线索。但很多情况,即使我观察了每一个监控项,还是无法断定刚刚那一下超时的原因。

一方面是数据存储的监控项本身不能做到监控所有的指标,另一方面网络也可能是引起这次超时的原因。在这个排查问题的过程中,也会发现很多自身的问题。问题就在那里,但自己不知道该查看哪一个监控项,只能像一只无头苍蝇,撞撞运气。

MySQL为什么查询的过程中也会抖动一下,可能是内部触发了刷脏页的逻辑。MySQL为了提高处理效率,使用了redo log和内存结合的方式,当查询数据时,如果发现内存中存在数据,就直接使用内存中的数据返回,当写入数据时,会先写到redo log和内存中,如果内存中的数据和磁盘中的数据不一致,就认为是脏页。

因为redo log是一个固定大小的循环数组,所以当redo log写满之后,如果有新的写请求进来,就必须阻塞,等到MySQL将数据同步到磁盘,才能继续执行。而如果数据读取的时候,发现内存中没有可用的数据页,会查找最近最长时间不被使用的内存页,而如果这个内存页正好是脏页,也需要将内存中的数据同步到磁盘。

刷脏页还存在刷新相邻脏页的过程,如果发现了一个脏页需要刷新,而它的相邻内存页正好也是脏页,就需要继续刷新。而这个过程,也会导致MySQL抖动的时间变长。

谨上,
i-neojos

MySQL为什么会抖一下相关推荐

  1. 《Mysql实战45讲》学习笔记 1-22

    Mysql <Mysql实战45讲> 1.一条sql查询语句是如何执行的 Server层: 连接器,查询缓存,分析器,优化器,执行器 存储引擎层: 负责数据的存储和提取 (Innodb, ...

  2. MySQL 实战45讲--笔记

    文章目录 MySQL 实战45讲-->笔记 开篇词 基础篇(8讲) 01 | 基础架构:一条SQL查询语句是如何执行的? 1.1 SQL 语句在 MySQL 的各个功能模块中的执行过程. 依次看 ...

  3. 金丝桃诗词精选四首 菲菲红紫送春去,独自黄葩夏日闲

    菲菲红紫送春去,独自黄葩夏日闲. 那得文仙归故园,黄冠相向到邱山. --宋代:吕本中<金丝桃> 为惜春风去渺茫.不堪回首忆刘郎. 慢裁金缕作衣裳.剩残妆.吐出丝丝惹恨长. --明代:高濂& ...

  4. mysql抖动可能的原因,12 | 为什么我的MySQL会“抖”一下?

    你的 SQL 语句为什么变"慢"了 平时执行很快的更新操作,其实就是在写内存和日志,而 MySQL 偶尔"抖"一下的那个瞬间,可能就是在刷脏页(flush). ...

  5. MYSQL 基于抖音上MYSQL开发工程师面试,如果是你怎么样

    MYSQL 作为开源数据库的明星,整体目前的无论从开发还是DBA,人才比较卷,已经到了一定的地步,偶然刷抖音,刷到一个面试的视频,面试一个MYSQL开发的程序小哥,面试人连珠炮的MYSQL 灵魂问题冲 ...

  6. 抖音mysql_抖音四面,复盘总结48题:Java基础+Spring+多线程+算法+MySQL+分布式

    Java岗面试的重点: 数据结构与算法,JVM内存结构.垃圾回收器.回收算法.GC.并发编程相关(多线程.线程池等).NIO/BIO.性能优化.设计模式.Spring框架:分布式相关:Redis缓存. ...

  7. MySQL 为什么我的MySQL会“抖一下“?

    日常读书笔记 现象 一句sql语句执行的时候,有时候会很快,但有时候也会很慢,出现时间随机,时间短,且不好模拟 原因 脏页的概念 ----取的内存和磁盘数据不一致的时候,这个内存页成为脏页 干净页的概 ...

  8. mysql仿网易评论_Android仿抖音评论列表(加评论功能)/网易云音乐列表

    老规矩 先上效果图 1542355190753.gif 附下Demo 如果想要实现抖音一样的评论功能,就要再列表dialog上面再弹出一个dialog. 那么问题来了:当评论的dialog弹出来的时候 ...

  9. mysql我没压岁钱了_2021你压没压我睡没睡我表情包动图下载-抖音你压没压我睡没睡我该不该给我压岁钱表情包gif版-东坡下载...

    抖音你压没压我睡没睡我该不该给我压岁钱表情包非常火爆的抖音表情包,让你可以跟紧潮流的表情包,更好的进行斗图使用,可以有效的提升彼此的感情. 抖音你压没压我睡没睡我该不该给我压岁钱表情包介绍 1.春节习 ...

最新文章

  1. java vagrant_vagrant 做一个java web开发环境
  2. 电子文件归档为什么非云不可
  3. 技术系列课|“主动降噪”到底有多厉害?
  4. Ubuntu16.04 卸载Gazebo7 安装 Gazebo9
  5. ADD_SHORTCUT_ACTION
  6. Windows Mobile和Wince(Windows Embedded CE )下使用.NET Compact Framework下注册表导出工具的开发...
  7. springboot实现热部署,修改代码不用重启服务
  8. Ubuntu下Chrome打不开解决办法
  9. 观察者模式和java委托
  10. vue php 架构目录,vuex 项目结构目录及一些简单配置介绍
  11. linux信号常用函数
  12. python pip常用指令(install,list,freeze,show,help)建议保存
  13. 【UE4】UE4蓝图基础
  14. 企业微信客户端调试工具
  15. c语言-计算摄氏温度
  16. Java、出差报销金额的计算
  17. 生产制造工厂的十二项生产管理步骤
  18. 百度云虚拟主机中的网站不能加载静态js、css和images等文件的解决方案
  19. 线性代数中的符号记录
  20. 纯JS判断iPhone准确机型,iPhone6~iPhoneXs Max

热门文章

  1. c语言程序设计中植树问题,植树问题 (3).doc
  2. AAA和RADIUS
  3. MATLAB导出coe文件,matlab生成coe文件
  4. 像素游戏画法_点画法遇到像素化
  5. 传说中的移动员工工资表,也不知是真是假
  6. python分离arw与jpg图片
  7. 1360: plank 栅栏修复
  8. IMAX [生活时尚]
  9. x265-1.8版本-common/lowres.cpp注释
  10. uniapp多选框组件太难用,自己手写一个它不香吗?