(1)回顾:
redo log里本质上记录的就是对某个表空间的某个数据页的某个偏移量的地方修改了几个字节的值,具体修改的值是什么,
它里面需要记录的就是:表空间号+数据页号+偏移量+修改几个字节的值+具体的值
(2)修改数据页的值:
根据你修改了数据页里的几个字节的值,redo log 划分为了不同的类型,MLOG_1BYTE,MLOG_2BYTE,MLOG_3BYTE,MLOG_4BYTE类型的日志依次类型,当然如果一下修改了一大串的值,类型就是 MLOG_WRITE_STRING, 代表在那个数据页的某个偏移量的位置插入或者修改了一大串的值。
(3)redo log大致结构如下:
一般结构:日志类型(MLOG_1BYTE),表空间ID,数据页号,数据页中的偏移量,具体修改的数据
如果是MLOG_WRITE_STRING 日志类型,因为不知道具体修改了多少字节的数据,所以会多一个修改数据长度,格式如下:<br /> ** 日志类型,表空间ID,数据页号,数据页中的偏移量,修改数据长度,具体修改的数据**