InnoDB存储结构:表空间、段、区、页
InnoDB存储层次 表空间(Tablespace) └─ 段(Segment) └─ 区(Extent,1MB = 64页) └─ 页(Page,16KB,InnoDB的基本IO单位) └─ 行(Row) 1. 表空间(Tablespace) 定义 表空间是InnoDB存储数据的逻辑单位,包含多个段。 分类 类型 文件名 内容 配置参数 系统表空间 ibdata1 数据字典、undo log、双写缓冲 innodb_data_file_path 独立表空间 table_name.ibd 表数据+索引 innodb_file_per_table 通用表空间 tablespace.ibd 多个表共享 CREATE TABLESPACE 临时表空间 ibtmp1 临时表、排序缓冲 innodb_temp_data_file_path Undo表空间 undo_001、undo_002 undo log(MySQL 8.0+) innodb_undo_tablespaces 系统表空间 vs 独立表空间 -- 查看配置 SHOW VARIABLES LIKE 'innodb_file_per_table'; -- ON:每个表独立.ibd文件(推荐) -- OFF:所有表共享ibdata1(不推荐) -- 查看表空间文件 # ls -lh /var/lib/mysql/test/ -rw-r----- 1 mysql mysql 16M users.ibd -- 独立表空间 优点: ...