该INNODB_SYS_TABLESPACES
表提供了关于InnoDB
file-per-table 和通用表空间的元数据,相当于
数据字典
SYS_TABLESPACES
中表中的
信息。InnoDB
有关相关的使用信息和示例,请参阅 第 14.16.3 节,“InnoDB INFORMATION_SCHEMA 系统表”。
该INFORMATION_SCHEMA
FILES
表报告所有InnoDB
表空间类型的元数据,包括 file-per-table 表空间、通用表空间、系统表空间、临时表空间和撤消表空间(如果存在)。
该INNODB_SYS_TABLESPACES
表有以下列:
SPACE
表空间 ID。
NAME
模式(数据库)和表名。
FLAG
表示有关表空间格式和存储特征的位级信息的数值。
FILE_FORMAT
表空间文件格式。例如, Antelope、 Barracuda或
Any
(一般表空间支持任何行格式)。该字段中的数据是根据驻留在.ibd 文件中的表空间标志信息解释的。有关InnoDB
文件格式的更多信息,请参阅 第 14.10 节,“InnoDB 文件格式管理”。ROW_FORMAT
表空间行格式(
Compact or Redundant
、Dynamic
或Compressed
)。.ibd
此列中的数据是根据驻留在文件中的表空间标志信息解释的。PAGE_SIZE
表空间页面大小。
.ibd
此列中的数据是根据驻留在文件中的表空间标志信息解释的。ZIP_PAGE_SIZE
表空间 zip 页大小。
.ibd
此列中的数据是根据驻留在文件中的表空间标志信息解释的。SPACE_TYPE
表空间的类型。可能的值包括
General
通用表空间和Single
每个表文件表空间。FS_BLOCK_SIZE
文件系统块大小,即用于打孔的单位大小。此列属于
InnoDB
透明页面压缩功能。FILE_SIZE
文件的表观大小,表示未压缩文件的最大大小。此列属于
InnoDB
透明页面压缩功能。ALLOCATED_SIZE
文件的实际大小,即磁盘上分配的空间量。此列属于
InnoDB
透明页面压缩功能。
例子
mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESPACES WHERE SPACE = 26\G
*************************** 1. row ***************************
SPACE: 26
NAME: test/t1
FLAG: 0
FILE_FORMAT: Antelope
ROW_FORMAT: Compact or Redundant
PAGE_SIZE: 16384
ZIP_PAGE_SIZE: 0
SPACE_TYPE: Single
FS_BLOCK_SIZE: 4096
FILE_SIZE: 98304
ALLOCATED_SIZE: 65536
笔记
您必须具有
PROCESS
查询此表的权限。使用
INFORMATION_SCHEMA
COLUMNS
表或SHOW COLUMNS
语句查看有关此表的列的其他信息,包括数据类型和默认值。由于所有 Antelope 文件格式的表空间标志始终为零(与表标志不同),因此无法根据此标志整数确定表空间行格式是冗余还是紧凑。因此,该
ROW_FORMAT
字段的可能值为“紧凑或冗余”、“压缩”或 “动态”。”随着通用表空间的引入,
InnoDB
系统表空间数据(对于 SPACE 0)暴露在INNODB_SYS_TABLESPACES
.