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

企业网站维护建设项目实践报告网站建设 慕课

企业网站维护建设项目实践报告,网站建设 慕课,杭州网站优化公司哪家好,小广告设计日志 在数据库中#xff0c;如何保证数据的回滚#xff0c;以及数据同步#xff0c;系统宕机后可以恢复到原来的状态#xff0c;其实就是依靠日志。 其中bin log是Server层特有的#xff0c;redo log是Innodb存储引擎特有的。 bin log 是逻辑日志#xff0c;主要记录这条…日志 在数据库中如何保证数据的回滚以及数据同步系统宕机后可以恢复到原来的状态其实就是依靠日志。 其中bin log是Server层特有的redo log是Innodb存储引擎特有的。 bin log 是逻辑日志主要记录这条SQL的原始逻辑比如 name 设置为abc redo log是物理日志在某个数据页上做了什么修改。 一个案例 假设我们现在要对t表(id,name) update t set name‘qxlx’ where id 1;设置操作 根据上一篇数据库基础架构篇这条SQL执行的流程都会走连接器查询缓存分析器优化器最后到执行器。 1.执行器根据建表的存储引擎来觉得使用哪个存储引擎一般都是InnoDB。因为InnoDB中存在change buffer这样的机制所以会先查询change buffer中有没有数据如果有的话直接操作更新没有的话会先从磁盘中查询数据返回给执行器。之后写入undo log 日志。 2.如何保证SQL没有提交可以回滚到之前的状态呢 在执行如上的SQL的之后会先写入undo log进行标记原始数据是什么 比如name abc, 如果这个SQL没有提交事务那么数据就会回滚到之前的状态 nameabc。 3.写入bin log日志。其实这个流程比较复杂我们来慢慢梳理以下具体的执行流程图在如下。 a.先从存储引擎中获取id1这样数据如果在内存中的话那么直接返回否则话从磁盘中读取到数据。将数据返回给执行器 b.执行器会进行数据增加操作name‘qxlx’写入新的一行将数据更新到内存中redo log此时处于prepare阶段Server层写入bin log存储引擎将redo log提交。 WAL 在写redo log日志的时候一般来说我们可以先把数据写到临时的缓存中然后等到一定的时候比如mysql空闲的时候在同步写回到磁盘中。而这样的话可以避免大量的IO 和 数据查找操作。这种机制就是 writer ahead logging技术。而redo log的区域是固定的也就是写满的之后需要强制刷新数据到磁盘中。 而如果要强制更新到磁盘中可以通过以下参数强制更新到磁盘中。sync_binlog设置成1也可以保证bin log 实时存储到磁盘中保证系统重启后数据不会丢失。 innodb_flush_log_at_trx_commit 1 sync_binlog 1 其实可以想一下一个学生正在听课老师讲的比较快的时候是赶不上讲笔记全部整理到自己的笔记本上可以先写到抄本上然后在下课后讲笔记整理到笔记本上。 两阶段提交 以上在写入bin log和 redo log的时候先写redo log 然后bin log redolog提交需要这么麻烦嘛我们这里分析以下。如果将两个过程分开来写的话 1.先写bin log然后此时系统宕机了重启之后因为redo log没有写入bin log(name‘qxlx’) 如果需要按照bin log进行数据同步到从库上那么数据就是错误的数据库本上是(name‘abc’) 2.先写redo log然后系统宕机重启之后redo log (name‘qxlx’) 但是数据库 (name‘abc’) 会按照redo log进行重新更新数据此时数据被更新为 (name‘qxlx’) 所以数据不一致了所以需要按照两阶段提交的方式来执行保证数据的一致性。 资料来源mysql45讲
http://www.hkea.cn/news/14289724/

相关文章:

  • 山东网站wordpress 游客评论
  • 常州好的网站设计公司济南网站建设企业
  • 培训网站建设方案模板下载门户网站后台管理模板
  • 程序员接单网站潍坊做电商的网站建设
  • 网站举报网大连软件培训
  • 付费的网站是指枣强网站建设培训学校
  • 西宁网站设计企业中国建设银行网站主要功能
  • 百度小程序制作网站html网页制作代码范例
  • 电影网站推广乐从做网站
  • python 做网站模块杭州网站制作报价
  • 佛山做外贸网站代理商网络推广运营推广
  • it做私活的网站公司网站开发用什么软件
  • 公司的网站建设费应该怎么入账织梦优美文章阅读网站源码
  • 网站模板助手出售自己的网站
  • 做网站是上海市建设工程材料网站
  • 三灶网站建设自适应网站导航怎么做
  • 电商网站运营流程从哪个网站设置宽带主机
  • 自我做t恤的网站网站外链建设大揭秘
  • 东莞网站推广团队wordpress 模板函数
  • 成都高端网站设计做网站竞价还需要推广公司
  • 高端模板网站建设价格苏州专业网站建设设计公司排名
  • 网站规划 评价网站建设公司如何发展
  • 郑州网站开发顾问网站的 联系我们怎么做
  • 网页就是一个网站的首页php sqlite 做网站
  • 性价比最高网站建设价格wordpress主题两边空白区域怎么添加图案
  • 军人运动会官方网站建设目标黄骅港属于哪个市
  • 怎样建网站买东西网站开发技术规范要求
  • logo123罗湖区seo排名
  • 巴中建设网站织梦网站如何做伪静态
  • 精通网站建设工资多少钱广州房地产最新消息