灌水唠嗑区
技术分享
问答

事务回滚的原理是什么?

发表于2026-04-22 11:17:5093次浏览7个评论

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

【GBase版本】:

【操作系统】:

【CPU】:

【问题描述】*:事务回滚的原理是什么?

评论

登录后才可以发表评论
曾云林发表于 3个月前
一、核心一句话
事务回滚本质:靠 Undo Log(撤销日志),把事务执行过的所有修改,原样恢复到执行前的状态。
二、底层原理流程
事务开始执行增删改之前,数据库先把修改前的旧数据记录到 Undo Log(回滚日志) 里。
执行 DML 操作真正修改内存 / 磁盘数据,但不直接落盘提交。
两种结局
正常提交(commit):事务结束,清空 Undo 日志,修改正式生效。
异常 / 手动回滚(rollback):数据库读取 Undo Log 里保存的旧数据,把已经改动的数据还原回去,就像从没操作过一样。
三、关键知识点
1.Undo Log 作用
保存修改前的原始数据快照
回滚时反向复原:增→删、删→恢复、改→改回原值
2. 和 Redo Log 的区别
Undo Log:用来回滚、保证原子性
Redo Log:用来崩溃恢复、保证持久性
3. 四大特性关联(ACID)
回滚直接保障 原子性:一个事务要么全部成功,要么全部撤销,不会只做一半。
曾云林发表于 3个月前
1
曾云林发表于 3个月前
2
曾云林发表于 3个月前
3
曾云林发表于 3个月前
4
曾云林发表于 3个月前
5
过客发表于 2个月前
看看啦。