page contents

Innodb的事务与日志的实现方式

轩辕小不懂 发布于 2021-06-29 11:16
阅读 642
收藏 0
分类:数据库
1158
Nen
Nen
- 程序员

因为事务在修改页时,要先记 undo,在记 undo 之前要记 undo 的 redo, 然后修改数据页,再记数据页修改的 redo。Redo(里面包括 undo 的修改) 一定要比数据页先持久化到磁盘。

当事务需要回滚时,因为有 undo,可以把数据页回滚到前镜像的 状态,崩溃恢复时,如果 redo log 中事务没有对应的 commit 记录,那么需要用 undo把该事务的修改回滚到事务开始之前。

如果有 commit 记录,就用 redo 前滚到该事务完成时并提交掉。

请先 登录 后评论