MySQL Redo与Undo日志是什么

发布时间:2022-08-01 11:12:14 作者:iii
来源:亿速云 阅读:118

这篇文章主要介绍“MySQL Redo与Undo日志是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“MySQL Redo与Undo日志是什么”文章能帮助大家解决问题。

1. Redo日志的介绍

Redo日志是物理日志,记录的是页面的变化。

1.1 Redo日志的作用

1.2 Redo日志的格式与类型

所谓REDO的组织方式,就是如何把需要的REDO内容记录到磁盘文件中,以方便高效的REDO写入,读取,恢复以及清理。我们这里把REDO从上到下分为三层:逻辑REDO层、物理REDO层和文件层。

这一层是真正的REDO内容,顺序的数据流,REDO由多个不同Type的多个REDO记录收尾相连组成,有全局唯一的递增的偏移sn,InnoDB会在全局log_sys中维护当前sn的最大值,并在每次写入数据时将sn增加REDO内容长度。

磁盘是块设备,InnoDB中也用Block的概念来读写数据,一个Block的长度OS_FILE_LOG_BLOCK_SIZE等于磁盘扇区的大小512B,每次IO读写的最小单位都是一个Block。

最终REDO会被写入到REDO日志文件中,并且日志文件是循环写入的

MySQL Redo与Undo日志是什么

2. 写入Redo日志的流程(MTR)

3. Checkpoint机制

Checkpoint是Redo日志中脏页的标记位,有以下两个作用:

MySQL Redo与Undo日志是什么

数据库恢复流程:

4. Undo日志介绍

Undo log是逻辑日志,记录的是数据的增量变化,它的作用是保证事务的原子性和事务并发控制。可以用于事务回滚,以及提供多版本机制(MVCC),解决读写冲突和一致性读的问题。

5. MVCC

MVCC的意义:

UndoLog在MVCC的作用:

关于“MySQL Redo与Undo日志是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。

推荐阅读:
  1. 理解ORACLE REDO与UNDO
  2. undo与redo的区别

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

mysql redo undo

上一篇:vue中兄弟组件传值的方式有哪些

下一篇:Vue怎么将数字转换成万

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》