在 MySQL 中,InnoDB 存储引擎的数据存储结构分为不同的层级。文件格式(File Format)决定了表空间级别的数据组织方式,而行记录格式(Row Format)决定了单行数据在数据页(Page)中的物理存储方式。 以下是 InnoDB 支持的文件格式和行记录格式的详细说明: --- 一、 InnoDB 文件格式(File Formats) InnoDB 历史上主要支持两种文件格式。需要注意的是,在 MySQL 8.0 中,文件格式的概念已被废弃(因为默认且仅支持较新的格式),但在 MySQL 5.7 及之前版本中非常重要。 1. Antelope(羚羊) 简介:这是 InnoDB 最原始、最古老的文件格式。 支持的行格式:仅支持 和 两种行记录格式。 限制:不支持表压缩,对包含大字段(BLOB、TEXT)的表处理效率相对较低。 2. Barracuda(梭鱼) 简介:在 MySQL 5.1 引入的新文件格式(当时作为插件),是 MySQL 5.7 的默认文件格式。 支持的行格式:支持所有的行格式,包括 、,以及新增的 和 。 优势:支持数据压缩,并且通过新的行格式优...