标签:led 语句 ons 两阶段 stack 归档 xid 参考资料 page
update 语句在更新的时候先更新内存后,写 redo-log 然后 bin-log ,其中后面一步是使用了两阶段提交, 也就是每一个更新都会写 bin-log ,要是发生异常崩溃的时候,
回答:它们有一个共同的数据字段,叫XID。崩溃恢复的时候,会按顺序扫描redo log:
### redo log 记录的是数据的物理变化,就是某个数据行从 X1 变到 X2 的过程。
### bin log 记录的是数据的逻辑逻辑变化,可以类比于就是执行像SQL一样的逻辑。
一个原因是历史原因,InnoDB 引擎是以插件的形式的加入到 MySQL ,而且 bin log 是属于 server 层的,其他引擎也都可以使用,但是 redo-log 则是 InnoDB 引擎特有的
1 和 2。
另外一个原因就是 redo-log 主要的功能是事务持久化支持崩溃恢复,而bin log 只能作数据归档,那你肯定会说为bin log 增加崩溃恢复的功能就行了嘛,是的,那样就会重新设计出一个 redo log 出来,于是 redo log 变得不可取代。
标签:led 语句 ons 两阶段 stack 归档 xid 参考资料 page
原文地址:https://www.cnblogs.com/Benjious/p/12341164.html