https://www.bilibili.com/video/BV1bQ4y1d7mz?p=3

https://cdn.nlark.com/yuque/0/2021/png/576791/1633443417450-ada18a2b-cff9-45ad-923b-e27924f60bae.png

Untitled

Undo log

数据库事务提交之前,会将事务修改数据的镜像(即修改前的旧版本)存放到 Undo 日志里,当事务回滚时,或者数据库崩溃时,可以利用 Undo 日志,即旧版本数据,撤销未提交事务对数据库产生的影响。

Redo Log

指事务中修改的任何数据,将最新的数据备份存储的位置(Redo Log),被称为重做日志。

Binlog

Binlog 记录了 MySQL 数据库执行更改的所有操作,以事件形式记录,还包含语句所执行的消耗时间。

三者的区别:

Redo Log、Undo Log 是在 InnoDB 存储引擎层产生,而 Binlog 是MySQL Server 层产生的。