目录
逻辑存储结构
表空间也就是ibd文件,一个MySQL实例可以对应多个表空间,用于存储记录,索引等数据。
段:分为数据段,索引段,回滚段,InnoDB是索引组织表,数据段就是B+树的叶子节点,索引段即为B+树的非叶子节点,段用来管理多个Extent(区)
区:表空间的单元结构,每个分区的大小为1M,默认情况下,InnoDB存储引擎页大小为16K,即一个区中一共有64个连续的页。
页:是InnoDB存储引擎管理磁盘管理的最小单元,每个页默认大小为16KB,为了保证页的连续性,InnoDB默认每次从磁盘中申请4-5个区。
行:InnoDB存储引擎中的数据是按行进行存放的
Trx_id:对某行记录进行修改时会将对应的事务id记录
Roll_pointer:每次修改前都会将旧记录写入undo log记录中,用于记录原始数据在undo log中的地址
整体架构
内存架构
磁盘架构