MySQL事务提交和崩溃恢复(2)
MySQL事务提交和崩溃恢复
如果没有两阶段提交
redolog未写入,binlog未写入:此时MySQL异常重启无法恢复数据,认为sql就没执行。
redolog写入,binlog未写入:此时MySQL异常重启能根据redolog恢复事务提交时的数据,但binlog没有记录,后续使用binlog恢复临时库会出现数据丟失,导致状态不一致。
binlog写入,redolog未写入:此时MySQL异常重启临时库能根据binlog重放事务提交时的数据,但redolog没有记录,如果主库有一些脏页已经刷盘,本应先回滚再通过binlog重放,但现在无法回滚,会导致状态不一致。
结论
所谓两阶段提交,就是指同时将redolog和binlog都写成功,这样既能保证通过binlog恢复临时库时和主库无差异,又能保证通过redolog恢复主库时和临时库无差异。
上述的关于MySQL事务提交和崩溃恢复的经验小知识,希望看完本文能给您带来一点帮助!
相关阅读
-
什么是DNS服务器? 配置和运行DNS服务器详细步骤
今天为大家介绍什么是DNS服务器的IT小经验,接下来一起来看看吧。 DNS(Domain Name System,域名系统)服务器是一个将域名(例如www.example.com)转换为与之对应的IP地址(例如192.0.2.1)的系统。
-
BGP路由优选规则 BGP路由规则有哪些?
如果想知道BGP路由优选规则的话题,具体内容如下: 在BGP网络设计中,针对BGP路由的各种路径属性的操作都将影响路由的优选,从而对网络的流量产生影响,掌握BGP路由的优选规则十分之重要
-
dns服务器未响应怎么修复 分享dns未响应最简单的修复办法
今天为大家介绍dns服务器未响应怎么修复和分享dns未响应最简单的修复办法的教程内容,继续往下看吧! 很多人在浏览网页时,经常会遇到DNS服务器未响应的情况,那么什么是DNS服务器?DNS未
-
什么是关系型数据库? 关系型数据库有哪些
小编为大家说一说什么是关系型数据库的教程内容,接下来一起来看看吧。 关系型数据库(Relational Database)是一种基于关系模型的数据库。 关系模型是由数学家兼计算机科学家Edgar F. Codd于


