MySQL 中规定一个页中至少要存放两行记录

Infimum记录是一个页面中最小的记录;Supremum记录是一个页面中最大的记录。(由5字节大小的记录头信息和8字节大小的一个固定单词组成,人为规定)

Infimum和Supremum记录的heap_no值分别为0和1。
堆中记录的heap_no值一旦分配便不可改变,即使记录被删除,该删除记录的heap_no值也依旧保持不变
next_record值记录从当前记录的真实数据到下一条记录的真实数据的距离(下一条数据指按照主键值从小到大排序的下一条记录)
+
next_record指向真实数据开始的位置,该位置向左是记录头信息,向右是真实数据,这便与之前行结构部分变长字段列表、NULL值列表逆序存放相对应。
删除一条记录时
deleted_flag值设置为1next_record值修改为该条记录的next_record值next_record值为0Supremun记录的n_owned值减小1Supremum和Infimum)划分为几个组。n_owned属性表示该组内有几条记录。每个分组的记录条数有以下规定:
Infimum记录所在的分组只能有一条记录Supremum记录所在的分组拥有的记录条数只能在1-8之间给记录进行分组的步骤:
Infimum和Supremum两条记录,它们分属于两个分组。页目录中只有两个记录Infimum和Supremum记录偏移量的槽n_owned值加18时,再插入一条记录便会将这两个组拆分为分别包含四条记录和五条记录的两个组。File Header中的FIL_PAGE_LSN,表示页面被最后修改时对应的日志序列号的值
在将页从内存刷新到磁盘时,为保证页的完整性,页首和页尾都会存储页中数据的校验和,以及页面最后修改时对应的LSN值(页尾只会存储LSN值的后4字节)。若页首和页尾的校验和以及LSN值校验不成功,就说明刷新期间出现了问题。