什么是Undo Log

在MySQL中,Undo Log是用来保存记录修改前的样子,用于事务回滚

基本原理

  1. 将需要修改的数据加载到BufferPool中
  2. 将旧值写入undo log文件中(磁盘持久化)
  3. 修改BufferPool中的记录信息
  4. 写入redo log buffer
  5. 提交事务时将redo log刷入磁盘文件中

mysql-UndoLog.png