MySQL 索引页和行结构
2022-11-20 11:04:36 14 举报
MySQL 索引页和行结构
作者其他创作
大纲/内容
FIL_PAGE_ARCH_LOG_NO_OR_SPACE_ID
delete_flag1 bit
0
4
第三列null
...
变长字段长度列表
Null...
FIL_PAGE_OFFSET
第一列null
预留位1
next_record
行结构
DB_ROLL_PTR7 byte
列N的值
04
第五列varcharxxx...
2
User Records
FIL_PAGE_PREV
next_record16 bit(2kb)
record_type 3 bit
PAGE_GARBAGE
第二列a
Page Header56 byte
预留位2
03
heap_no13 bit
Null 值列表
第三列是定长字段,所以在变长字段列表中不存在,但如果超出 768 字节还是会记录
FIL_PAGE_TYPE
第五列b
隐藏列
1
DB_ROW_ID6 byte
PAGE_N_HEAP
PAGE_LEVEL
DB_ROW_ID
PAGE_BTR_SEG_TOP
变长字...
PAGE_N_RECS
FIL_PAGE_NEXT
第三列charcc
8
5
n_owned4 bit
第二列varcharbbb
DB_TRX_ID
10
FIL_PAGE_SPACE_OR_CHECKSUM
Slot
列1的值
DB_ROLL_PTR
01
预留位11 bit
PAGE_N_DIRECTION
PAGE_INDEX_ID
索引的物理结构
3
PAGE_LAST_INSERT
File Trailer8 byte
PAGE_FREE
第四列null
PAGE_HEAP_TOP
PAGE_N_DlR_SLOTS
NULL值列表
https://www.yuque.com/xiaozeizeizi/learning/rde8uglr7b6uvtxd
记录头信息
N
DB_TRX_ID6 byte
保存每一组中最后一条的地址偏移量
Infimum 13 byte
注意排序和字段排序是相反的
PAGE_MAX_TRX_ID
PAGE_DIRECTION
File Header38 byte
Page Directory
用户列
min_rec_flag1 bit
预留位21 bit
Supremum 13 byte
第四列varchard
最后一个分组实际包含了 supremum,但 supremum 的物理位置其实在数据行之前
第一列varcharaaaa
16KB
FIL_PAGE_FILE_FLUSH_LSN
00001101
FFFF
FIL_PAGE_LSN
Free Space
PAGE_BTR_SEG_LEAF
0 条评论
下一页