innodb 数据页结构
File Header 文件头部
占用空间38字节,存储页的通用信息。具体内容如下:
FIL_PAGE_SPACE_OR_CHKSUM:页的校验和,占用空间大小4字节
FIL_PAGE_OFFSET:页号,占用空间大小4字节
FIL_PAGE_PREV:上一个页的页号,占用空间大小4字节
FIL_PAGE_NEXT:下一个页的页号,占用空间大小4字节
FIL_PAGE_LSN:页面最后修改时对应的LSN(日志序列号)值,占用空间大小8字节
FIL_PAGE_TYPE:该页的类型,占用空间大小2字节
FIL_PAGE_FILE_FLUSH_LSN:仅在系统表空间的第一个页中定义,代表文件至少被刷新到了对应的LSN值,占用空间大小8字节
FIL_PAGE_ARCH_LOG_NO_OR_SPACE_ID:页属于哪个表空间,占用空间大小4字节
Page Header 页面头部
占用空间56字节,数据页专有的一些信息。具体的信息如下:
PAGE_N_DIR_SLOTS:在页目录中的槽数量,占用空间大小2字节
PAGE_HEAP_TOP:还未使用的空间最小地址,也就是说在改地址之后就是Free Space,占用空间大小2字节
PAGE_N_HEAP:第1位记录是否为紧凑型的记录,剩余的15为表示本页的堆中记录的数量(包括Infimum和Supremum记录及标记为已删除的记录),占用空间大小2字节
PAGE_FREE:各个已删除的记录通过next_rec