Insert Undo Log用于事务回滚,不参与MVCC,事务提交后可立即清除;2. Update Undo Log支持事务回滚和MVCC,保留历史版本直至purge线程清理。

在 MySQL 中,undo log 是用于实现事务回滚和多版本并发控制(MVCC)的重要机制。它记录了数据修改前的旧值,以便在事务回滚时恢复原始数据,或为其他事务提供一致性读视图。根据操作类型的不同,undo log 被分为两种主要类型:
这种类型的 undo log 产生于 INSERT 操作。当一个事务插入一条新记录时,MySQL 会生成对应的 Insert Undo Log,记录这条“即将被插入”的记录的信息,以便在事务失败或执行 ROLLBACK 时能够将这条记录从数据库中移除。
特点包括:
这种 undo log 产生于 UPDATE 或 DELETE 操作,也称为 Modify Undo Log。它不仅用于事务回滚,还支持 MVCC,允许其他事务读取该记录的历史版本。
其主要特点有:
基本上就这些。理解这两种 undo log 的区别,有助于更好地掌握 MySQL 的事务机制与性能调优策略。
以上就是mysql中undo log的两种类型的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号