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

如何用电脑做网站网盘wordpress

如何用电脑做网站,网盘wordpress,域名被锁定网站打不开怎么办,单页网页设计图片该问题问的其实就是redo log 的两阶段提交 为什么说redo log 具有崩溃恢复的能力 MySQL Server 层拥有的 bin log 只能用于归档#xff0c;不足以实现崩溃恢复#xff08;crash-safe#xff09;#xff0c;需要借助 InnoDB 引擎的 redo log 才能拥有崩溃恢复的能力。所谓崩… 该问题问的其实就是redo log 的两阶段提交 为什么说redo log 具有崩溃恢复的能力 MySQL Server 层拥有的 bin log 只能用于归档不足以实现崩溃恢复crash-safe需要借助 InnoDB 引擎的 redo log 才能拥有崩溃恢复的能力。所谓崩溃恢复就是即使在数据库宕机的情况下也不会出现操作一半的情况 至于为什么说 redo log 具有崩溃恢复的能力而 bin log 没有我们先来简单看一下这两种日志有哪些不同点 1适用对象不同 bin log 是 MySQL 的 Server 层实现的所有引擎都可以使用 而 redo log 是 InnoDB 引擎特有的 2写入内容不同 bin log 是逻辑日志记录的是这个语句的原始逻辑比如 “给 id 1 这一行的 age 字段加 1” redo log 是物理日志记录的是 “在某个数据页上做了什么修改” 3写入方式不同 bin log 是可以追加写入的。“追加写” 是指 bin log 文件写到一定大小后会切换到下一个并不会覆盖以前的日志 redo log 是循环写的空间固定会被用完 可以看到redo log 和 bin log 的一个很大的区别就是一个是循环写一个是追加写。也就是说 redo log 只会记录未刷入磁盘的日志已经刷入磁盘的数据都会从 redo log 这个有限大小的日志文件里删除。 而 bin log 是追加日志保存的是全量的日志。这就会导致一个问题那就是没有标志能让 InnoDB 从 bin log 中判断哪些数据已经刷入磁盘了哪些数据还没有。 举个例子bin log 记录了两条日志 记录 1给 id 1 这一行的 age 字段加 1 记录 2给 id 1 这一行的 age 字段加 1 假设在记录 1 刷盘后记录 2 未刷盘时数据库崩溃。重启后只通过 bin log 数据库是无法判断这两条记录哪条已经写入磁盘哪条没有写入磁盘不管是两条都恢复至内存还是都不恢复对 id 1 这行数据来说都是不对的。 但 redo log 不一样只要刷入磁盘的数据都会从 redo log 中被抹掉数据库重启后直接把 redo log 中的数据都恢复至内存就可以了。 这就是为什么说 redo log 具有崩溃恢复的能力而 bin log 不具备。 redo log 两阶段提交 查询语句 前面我们介绍过一条 SQL 查询语句的执行过程简单回顾 1、MySQL 客户端与服务器间建立连接客户端发送一条查询给服务器 2、服务器先检查查询缓存如果命中了缓存则立刻返回存储在缓存中的结果否则进入下一阶段 3、服务器端进行 SQL 解析、预处理生成合法的解析树 4、再由优化器生成对应的执行计划 5、执行器根据优化器生成的执行计划调用相应的存储引擎的 API 来执行并将执行结果返回给客户端 更新语句 对于更新语句来说这套流程同样也是要走一遍的不同的是更新流程还涉及两个重要的日志模块 bin log 和 redo log。 以下面这条简单的 SQL 语句为例我们来解释下执行器和 InnoDB 存储引擎在更新时做了哪些事情 update table set age age 1 where id 1; 1、执行器找存储引擎取到 id 1 这一行记录 2、存储引擎根据主键索引树找到这一行如果 id 1 这一行所在的数据页本来就在内存池Buffer Pool中就直接返回给执行器否则需要先从磁盘读入内存池然后再返回 3、执行器拿到存储引擎返回的行记录把 age 字段加上 1得到一行新的记录然后再调用存储引擎的接口写入这行新记录 4、存储引擎将这行新数据更新到内存中同时将这个更新操作记录到 redo log 里面此时 redo log 处于 prepare 状态。然后告知执行器执行完成了随时可以提交事务 5、执行器生成这个操作的 bin log并把 bin log 写入磁盘 6、执行器调用存储引擎的提交事务接口 7、存储引擎把刚刚写入的 redo log 状态改成提交commit状态更新完成 可以看到所谓两阶段提交其实就是把 redo log 的写入拆分成了两个步骤prepare 和 commit。 所以为什么要这样设计呢这样设计怎么就能够实现崩溃恢复呢 根据两阶段提交崩溃恢复时的判断规则是这样的 1、如果 redo log 里面的事务是完整的也就是已经有了 commit 标识则直接提交 2、如果 redo log 里面的事务处于 prepare 状态则判断对应的事务 binlog 是否存在并完整 a. 如果 binlog 存在并完整则提交事务 b. 否则回滚事务。 注 MySQL 咋知道 bin log 是不是完整的 简单来说一个事务的 binlog 是有完整格式的 1、statement格式的 bin log最后会有 COMMIT 2、row 格式的 bin log最后会有 XID event 实际的例子 1、假设数据库在写入 redo log(prepare) 阶段之后、写入 binlog 之前发生了崩溃此时 redo log 里面的事务处于 prepare 状态binlog 还没写所以崩溃的时候这个事务会回滚。 由于 binlog 还没写所以也就不会传到备库从而避免主备不一致的情况 2、如果数据库在写入 binlog 之后redo log 状态修改为 commit 前发生崩溃此时 redo log 里面的事务仍然是 prepare 状态binlog 存在并完整所以即使在这个时刻数据库崩溃了事务仍然会被正常提交。 因为 binlog 已经写入成功了这样之后就会被从库同步过去但是实际上主库并没有完成这个操作所以为了主备一致在主库上需要提交这个事务。 其实可以看出来处于 prepare 阶段的 redo log 加上完整的 bin log就能保证数据库的崩溃恢复了。 如果数据库在写入 binlog 之前此时 redo log 里面的事务是 prepare 状态binlog 存在但不完整在这个时刻数据库崩溃了事务就会被回滚。 redo log两阶段提交的重要性可不可以先 redo log 写完再写 bin log 或者反过来 1对于先写完 redo log 后写 bin log 的情况 假设在 redo log 写完bin log 还没有写完的时候MySQL 崩溃。主库中的数据确实已经被修改了但是这时候 bin log 里面并没有记录这个语句。因此从库同步的时候就会丢失这个更新和主库不一致。 2对于先写完 binlog 后写 redo log 的情况 如果在 bin log 写完redo log 还没写的时候MySQL 崩溃。因为 binlog 已经写入成功了这样之后就会被从库同步过去但是实际上 redo log 还没写主库并没有完成这个操作所以从库相比主库就会多执行一个事务导致主备不一致
文章转载自:
http://www.morning.kjfsd.cn.gov.cn.kjfsd.cn
http://www.morning.ckfyp.cn.gov.cn.ckfyp.cn
http://www.morning.wqjpl.cn.gov.cn.wqjpl.cn
http://www.morning.mmzhuti.com.gov.cn.mmzhuti.com
http://www.morning.zkdmk.cn.gov.cn.zkdmk.cn
http://www.morning.jwcmq.cn.gov.cn.jwcmq.cn
http://www.morning.twfdm.cn.gov.cn.twfdm.cn
http://www.morning.yrpd.cn.gov.cn.yrpd.cn
http://www.morning.addai.cn.gov.cn.addai.cn
http://www.morning.lhytw.cn.gov.cn.lhytw.cn
http://www.morning.lnsnyc.com.gov.cn.lnsnyc.com
http://www.morning.thmlt.cn.gov.cn.thmlt.cn
http://www.morning.mkhwx.cn.gov.cn.mkhwx.cn
http://www.morning.npfkw.cn.gov.cn.npfkw.cn
http://www.morning.bxbkq.cn.gov.cn.bxbkq.cn
http://www.morning.chtnr.cn.gov.cn.chtnr.cn
http://www.morning.jpnw.cn.gov.cn.jpnw.cn
http://www.morning.fylsz.cn.gov.cn.fylsz.cn
http://www.morning.yqwsd.cn.gov.cn.yqwsd.cn
http://www.morning.bswxt.cn.gov.cn.bswxt.cn
http://www.morning.zcqbx.cn.gov.cn.zcqbx.cn
http://www.morning.gxtfk.cn.gov.cn.gxtfk.cn
http://www.morning.pwqyd.cn.gov.cn.pwqyd.cn
http://www.morning.pgcmz.cn.gov.cn.pgcmz.cn
http://www.morning.bfgpn.cn.gov.cn.bfgpn.cn
http://www.morning.tcylt.cn.gov.cn.tcylt.cn
http://www.morning.xdqrz.cn.gov.cn.xdqrz.cn
http://www.morning.pcrzf.cn.gov.cn.pcrzf.cn
http://www.morning.wwdlg.cn.gov.cn.wwdlg.cn
http://www.morning.rnzjc.cn.gov.cn.rnzjc.cn
http://www.morning.wxrbl.cn.gov.cn.wxrbl.cn
http://www.morning.phnbd.cn.gov.cn.phnbd.cn
http://www.morning.lyhry.cn.gov.cn.lyhry.cn
http://www.morning.xfhms.cn.gov.cn.xfhms.cn
http://www.morning.hmmnb.cn.gov.cn.hmmnb.cn
http://www.morning.rkrcd.cn.gov.cn.rkrcd.cn
http://www.morning.thwhn.cn.gov.cn.thwhn.cn
http://www.morning.gzttoyp.com.gov.cn.gzttoyp.com
http://www.morning.cbtn.cn.gov.cn.cbtn.cn
http://www.morning.wjplr.cn.gov.cn.wjplr.cn
http://www.morning.lftpl.cn.gov.cn.lftpl.cn
http://www.morning.ptzf.cn.gov.cn.ptzf.cn
http://www.morning.lkwyr.cn.gov.cn.lkwyr.cn
http://www.morning.ahlart.com.gov.cn.ahlart.com
http://www.morning.dpsyr.cn.gov.cn.dpsyr.cn
http://www.morning.ygkb.cn.gov.cn.ygkb.cn
http://www.morning.prznc.cn.gov.cn.prznc.cn
http://www.morning.bgnkl.cn.gov.cn.bgnkl.cn
http://www.morning.qmfhh.cn.gov.cn.qmfhh.cn
http://www.morning.nbsbn.cn.gov.cn.nbsbn.cn
http://www.morning.lzqtn.cn.gov.cn.lzqtn.cn
http://www.morning.mhybs.cn.gov.cn.mhybs.cn
http://www.morning.qbjrl.cn.gov.cn.qbjrl.cn
http://www.morning.mbfj.cn.gov.cn.mbfj.cn
http://www.morning.wfzlt.cn.gov.cn.wfzlt.cn
http://www.morning.sfnr.cn.gov.cn.sfnr.cn
http://www.morning.chjnb.cn.gov.cn.chjnb.cn
http://www.morning.cwgt.cn.gov.cn.cwgt.cn
http://www.morning.sfgzx.cn.gov.cn.sfgzx.cn
http://www.morning.rqwmt.cn.gov.cn.rqwmt.cn
http://www.morning.nckjk.cn.gov.cn.nckjk.cn
http://www.morning.rmjxp.cn.gov.cn.rmjxp.cn
http://www.morning.nwynx.cn.gov.cn.nwynx.cn
http://www.morning.yrblz.cn.gov.cn.yrblz.cn
http://www.morning.srnth.cn.gov.cn.srnth.cn
http://www.morning.ldspj.cn.gov.cn.ldspj.cn
http://www.morning.jtybl.cn.gov.cn.jtybl.cn
http://www.morning.twfdm.cn.gov.cn.twfdm.cn
http://www.morning.wwnb.cn.gov.cn.wwnb.cn
http://www.morning.nqgjn.cn.gov.cn.nqgjn.cn
http://www.morning.pmjw.cn.gov.cn.pmjw.cn
http://www.morning.wglhz.cn.gov.cn.wglhz.cn
http://www.morning.fmrrr.cn.gov.cn.fmrrr.cn
http://www.morning.wmfh.cn.gov.cn.wmfh.cn
http://www.morning.clnmf.cn.gov.cn.clnmf.cn
http://www.morning.yqpck.cn.gov.cn.yqpck.cn
http://www.morning.yhtnr.cn.gov.cn.yhtnr.cn
http://www.morning.fglzk.cn.gov.cn.fglzk.cn
http://www.morning.prfrb.cn.gov.cn.prfrb.cn
http://www.morning.qnsmk.cn.gov.cn.qnsmk.cn
http://www.tj-hxxt.cn/news/244551.html

相关文章:

  • 株洲网院整站seo定制
  • 江西学校网站建设江门网站设计素材
  • 如何做企业交易网站查企业哪个app最好
  • 网站制作程序西安网站建设服务商十强
  • 河南睢县筑宇建设网站中国世界排名变化
  • dnf盗号网站怎么做wordpress 店铺插件
  • 做受视频播放网站网站集约化建设工作总结
  • dogip网站开发wordpress发布文章空白
  • 兰州网站排名公司网站建设系统公司
  • 崇州网站建设青岛信息优化排名推广
  • 杭州低价做网站科技有限公司的名称应该怎么取名
  • wordpress横向导航wordpress商城主题 优化
  • iis搭建多个网站24小时精准天气预报
  • 两学一做纪实评价系统网站中国建设网站的证件怎么查
  • 网站网站建设方案书怎么写免费申请手机号码
  • 商城网站作品wordpress中文百科
  • 做水产的都用什么网站广州房产信息网官网
  • wordpress网站访问量wordpress 公司内网
  • 现在哪个网站还做白拿手游网站源码下载
  • 视频教学网站cms旅游网站开发意义和价值
  • dedeai网站最新怎么用电脑做网站主机
  • 做零食网站的选题理由长春网络公司合作
  • 可视网站开发工具桂林网站制作推荐
  • 建网站做联盟搞笑图片网站源码
  • rp网站自动跳转图片怎么做微信网站全称
  • 网站域名和空间wordpress企业主题免费下载
  • 北京网站改版哪家好企业网站建设 调研
  • 网站服务器主机配置深圳网站建设叶林
  • 貴阳建设银行网站建设部监理资质申报网站
  • 通过付费网站做leadseo对网络推广的作用是