INNODB_TABLESPACES
表提供了有关 InnoDB
文件每表、常规和撤消表空间的元数据。
有关相关使用信息和示例,请参见 第 17.15.3 节 “InnoDB INFORMATION_SCHEMA 模式对象表”。
INFORMATION_SCHEMA
FILES
表报告 InnoDB
表空间类型的元数据,包括文件每表表空间、常规表空间、系统表空间、全局临时表空间和撤消表空间。
INNODB_TABLESPACES
表包含以下列:
SPACE
表空间 ID。
NAME
模式(数据库)和表名。
FLAG
一个数值,表示有关表空间格式和存储特征的位级信息。
ROW_FORMAT
表空间行格式(
Compact
或Redundant
、Dynamic
或Compressed
,或Undo
)。此列中的数据是从驻留在数据文件中的表空间标志信息解释的。无法从该标志信息中确定表空间行格式是
Redundant
还是Compact
,这就是为什么ROW_FORMAT
的可能值之一是Compact or Redundant
。PAGE_SIZE
表空间页面大小。此列中的数据是从驻留在
.ibd
文件 中的表空间标志信息解释的。ZIP_PAGE_SIZE
表空间压缩页面大小。此列中的数据是从驻留在
.ibd
文件 中的表空间标志信息解释的。SPACE_TYPE
表空间的类型。可能的值包括:
General
表示常规表空间,Single
表示文件每表表空间,System
表示系统表空间,Undo
表示撤消表空间。FS_BLOCK_SIZE
文件系统块大小,它是用于打孔的单位大小。此列 pertains to the
InnoDB
透明页面压缩 特性。FILE_SIZE
文件的表观大小,表示文件未压缩时的最大大小。此列 pertains to the
InnoDB
透明页面压缩 特性。ALLOCATED_SIZE
文件的实际大小,即磁盘上分配的空间量。此列 pertains to the
InnoDB
透明页面压缩 特性。AUTOEXTEND_SIZE
表空间的自动扩展大小。
SERVER_VERSION
创建表空间的 MySQL 版本、导入表空间的 MySQL 版本或最后一个主要 MySQL 版本升级的版本。该值在发布系列升级(例如从 MySQL 8.4.
x
升级到 8.4.y
)后保持不变。该值可以被视为表空间的“创建”标记或“认证”标记。SPACE_VERSION
表空间版本,用于跟踪表空间格式的变化。
ENCRYPTION
表空间是否已加密。
STATE
表空间状态。
对于文件每表和常规表空间,状态包括:
normal
:表空间正常且处于活动状态。discarded
:表空间已被ALTER TABLE ... DISCARD TABLESPACE
语句丢弃。corrupted
:表空间被InnoDB
识别为已损坏。
对于撤消表空间,状态包括:
active
:撤消表空间中的回滚段可以分配给新事务。inactive
:撤消表空间中的回滚段不再由新事务使用。截断进程正在进行中。撤消表空间要么由清除线程隐式选择,要么由ALTER UNDO TABLESPACE ... SET INACTIVE
语句设为非活动状态。empty
:撤消表空间已被截断,并且不再处于活动状态。它已准备好被删除或由ALTER UNDO TABLESPACE ... SET INACTIVE
语句再次设为活动状态。
示例
mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_TABLESPACES WHERE SPACE = 26\G
*************************** 1. row ***************************
SPACE: 26
NAME: test/t1
FLAG: 0
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
AUTOEXTEND_SIZE: 0
SERVER_VERSION: 8.4.0
SPACE_VERSION: 1
ENCRYPTION: N
STATE: normal
注意
您必须拥有
PROCESS
权限才能查询此表。使用
INFORMATION_SCHEMA
COLUMNS
表或SHOW COLUMNS
语句查看有关此表列的其他信息,包括数据类型和默认值。