当前位置: 首页 > news >正文

wordpress在哪里下载天津百度seo排名优化

wordpress在哪里下载,天津百度seo排名优化,想做网站运营专员,怎样做国外网站本文已收录至Github#xff0c;推荐阅读 #x1f449; Java随想录 文章目录 摘要为什么需要Doublewrite BufferDoublewrite Buffer原理Doublewrite Buffer相关参数总结 摘要 InnoDB是MySQL中一种常用的事务性存储引擎#xff0c;它具有很多优秀的特性。其中#xff0c;Dou…本文已收录至Github推荐阅读 Java随想录 文章目录 摘要为什么需要Doublewrite BufferDoublewrite Buffer原理Doublewrite Buffer相关参数总结 摘要 InnoDB是MySQL中一种常用的事务性存储引擎它具有很多优秀的特性。其中Doublewrite Buffer是InnoDB的一个重要特性之一本文将介绍Doublewrite Buffer的原理和应用。 为什么需要Doublewrite Buffer 我们常见的服务器一般都是Linux操作系统Linux文件系统页OS Page的大小默认是4KB。而MySQL的页Page大小默认是16KB。 可以使用如下命令查看MySQL的Page大小 SHOW VARIABLES LIKE innodb_page_size;一般情况下其余程序因为需要跟操作系统交互它们的页Page都会大于等于操作系统的页大小为整数倍。比如Oracle的Page大小为8KB。 MySQL程序是跑在Linux操作系统上的需要跟操作系统交互所以MySQL中一页数据刷到磁盘要写4个文件系统里的页。 需要注意的是这个操作并非原子操作比如我操作系统写到第二个页的时候Linux机器断电了这时候就会出现问题了。造成”页数据损坏“。并且这种”页数据损坏“靠 redo日志是无法修复的。 重做日志中记录的是对页的物理操作而不是页面的全量记录而如果发生partial page write部分页写入问题时出现问题的是未修改过的数据此时重做日志(Redo Log)无能为力。写doublewrite buffer成功了这个问题就不用担心了。 Doublewrite Buffer的出现就是为了解决上面的这种情况虽然名字带了Buffer但实际上Doublewrite Buffer是内存磁盘的结构。 Doublewrite Buffer是一种特殊文件flush技术带给InnoDB存储引擎的是数据页的可靠性。它的作用是在把页写到数据文件之前InnoDB先把它们写到一个叫doublewrite buffer双写缓冲区的共享表空间内在写doublewrite buffer完成后InnoDB才会把页写到数据文件的适当的位置。如果在写页的过程中发生意外崩溃InnoDB在稍后的恢复过程中在doublewrite buffer中找到完好的page副本用于恢复。 Doublewrite Buffer原理 如上图所示当有页数据要刷盘时 页数据先通过memcpy函数拷贝至内存中的Doublewrite Buffer中 Doublewrite Buffer的内存里的数据页会fsync刷到Doublewrite Buffer的磁盘上分两次写入磁盘共享表空间中(连续存储顺序写性能很高)每次写1MB Doublewrite Buffer的内存里的数据页再刷到数据磁盘存储.ibd文件上离散写 Doublewrite Buffer内存结构由128个页Page构成大小是2MB。 Doublewrite Buffer磁盘结构在系统表空间上是128个页2个区extend1和extend2大小是2MB。 如果操作系统在将页写入磁盘的过程中发生了崩溃在恢复过程中InnoDB存储引擎可以从共享表空间中的Double write中找到该页的一个副本将其复制到表空间文件再应用重做日志。 MySQL会检查double writer的数据的完整性如果不完整直接丢弃double write buffer内容重新执行那条redo log如果double write buffer的数据是完整的用double writer buffer的数据更新该数据页跳过该redo log。 所以在正常的情况下MySQL写数据页时会写两遍到磁盘上第一遍是写到doublewrite buffer第二遍是写到真正的数据文件中这就是“Doublewrite”的由来。 在数据库异常关闭的情况下启动时都会做数据库恢复redo操作恢复的过程中数据库都会检查页面是不是合法校验等等如果发现一个页面校验结果不一致则此时会用到双写这个功能。 我们可以通过如下命令来监控Doublewrite Buffer工作负载 mysql show global status like %dblwr%;Doublewrite Buffer相关参数 innodb_doublewriteDoublewrite Buffer是否启用开关默认是开启状态InnoDB将所有数据存储两次首先到双写缓冲区然后到实际数据文件。Innodb_dblwr_pages_written记录写入到DWB中的页数量。Innodb_dblwr_writes记录DWB写操作的次数。 总结 InnoDB Doublewrite Buffer是InnoDB的一个重要特性用于保证MySQL数据的可靠性和一致性。它的实现原理是通过将要写入磁盘的数据先写入到Doublewrite Buffer中的内存缓存区域然后再写入到磁盘的两个不同位置来避免由于磁盘损坏等因素导致数据丢失或不一致的问题。Doublewrite Buffer对于保证MySQL数据的安全性和一致性具有重要意义。
http://www.w-s-a.com/news/126831/

相关文章:

  • 动画毕业设计代做网站高校门户网站建设需要多少钱
  • 网站内链设置wordpress前台特别慢
  • 杭州模板网站建设系统江苏省建设考试网站准考证打印
  • 国家建设执业资格注册中心网站企业手机网站建设机构
  • 内容管理系统做网站怎么做英文版的网站
  • 浙江省专业网站制作网站建设网站设计及内容策划
  • 浙江门户网站建设公司做网站上哪买空间
  • 郑州网站怎么推广贵阳市网站建设
  • 规范网站建设福州外贸网站建设推广
  • 平台电商网站开发传媒公司排行
  • 在哪给人做网站怎么样制作一个网页
  • 网站更改文章标题广西新闻
  • 专业做网站路桥寺院网站建设方案
  • 网站维护与优化教程广州做网站的网络公司排名
  • 网站做贷款许可证网站改版方案模板
  • 装饰公司怎么做网站嘉兴网站制作推广
  • 深圳兼职做网站涿州网站制作
  • 能找本地人做导游的网站app模板素材下载免费
  • 网站积分的作用网站开发需要看相关书籍
  • 建设银行总行网站alexa排名与什么有关系
  • 阿里云服务器发布网站收款网站怎么建设
  • 开发东莞网站制作公司做网站优化步骤
  • 网站版权信息的正确写法如何制作网络游戏
  • 郑州移动端网站建设如何在网上推广自己的公司
  • 企业建站源码系统破解网站后台
  • 石家庄网站开发报价企业注册资本代表什么
  • 招商平台公司宁波seo教程推广平台
  • 哪些网站可以做房产推广垂直门户网站都有什么
  • 不得不知道的网站金石项目管理软件
  • 怎么恢复网站数据库网站开发作业代做