0
点赞
收藏
分享

微信扫一扫

InnoDB行记录格式(compact)、InnoDB数据页结构

1. compact 行记录格式:

变长字段长度列表,null标志位,记录头信息,列1数据,列2数据 ……

记录头信息中包含许多信息,只列举一部分:

名称

大小

描述

deleted_flag

1bit

该行是否已被删除

record_type

3bit

记录类型,000表示普通,001表示B+树节点,010表示Infimun,011表示Supremum,1xx表示保留

next_record

16bit

页中下一条记录的相对位置

n_owned

4bit

该记录拥有的记录数

 

 

 

 

 

2. 页是InnoDB存储引擎管理数据库的最小磁盘单位。

File Header 部分字段:

名称

大小(字节)

说明

FIL_PAGE_OFFET

4

表空间中页的偏移值。如某独立表空间a.ibd的大小为1G,如果页的大小为16KB,那么总共有65536个页。FIL_PAGE_OFFET表示改页在所有页中的位置。若此表空间的id为10,那么搜索页(10, 1)就表示查找表a中的第2页

FIL_PAGE_PREV

4

当前页的上一页,B+树的叶子节点是双向链表

FIL_PAGE_NEXT

4

下一页

FIL_PAGE_LSN

8

该页最后被修改的LSN(Log Sequence Number)

FIL_PAGE_TYPE

2

InnoDB存储引擎页的类型

FIL_PAGE_TYPE的取值说明:

名称

解释

FIL_PAGE_INDEX

B+树叶节点

FIL_PAGE_UNDO_LOG

Undo log 页

FIL_PAGE_INODE

索引节点

 

举报

相关推荐

0 条评论