数据库表中的行格式决定了数据在物理存储时的布局方式,进而对查询和DML操作的性能产生影响。
在InnoDB存储引擎中,常见的行格式主要包括以下四种:
image.png
COMPACT适用于处理大量包含可变长度列(如VARCHAR、VARBINARY、BLOB和TEXT类型)数据。
对于可变长度列,前768字节的数据存储在B树节点的索引记录中,超出部分存储在溢出页中。大于或等于768字节的固定长度列会被编码为可变长度列,可以存储在页外。
image.png
行格式 | 紧凑的存储特性 | 增强的可变长度列存储 | 大索引键前缀支持 | 压缩支持 | 支持的表空间类型 | 所需文件格式 |
---|---|---|---|---|---|---|
REDUNDANT | 否 | 否 | 否 | 否 | system, file-per-table, general | Antelope or Barracuda |
COMPACT | 是 | 否 | 否 | 否 | system, file-per-table, general | Antelope or Barracuda |
DYNAMIC | 是 | 是 | 是 | 否 | system, file-per-table, general | Barracuda |
COMPRESSED | 是 | 是 | 是 | 是 | file-per-table, general | Barracuda |
好了,本章节到此告一段落。希望对你有所帮助,祝学习顺利。