INNODB_TABLESPACES
テーブルは、InnoDB
file-per-table、general および undo テーブルスペースに関するメタデータを提供します。
関連する使用法と使用例については、セクション15.15.3「InnoDB INFORMATION_SCHEMA スキーマオブジェクトテーブル」を参照してください。
INFORMATION_SCHEMA
FILES
テーブルには、file-per-table テーブルスペース、一般テーブルスペース、システムテーブルスペース、グローバル一時テーブルスペースおよび undo テーブルスペースを含む InnoDB
テーブルスペースタイプのメタデータがレポートされます。
INNODB_TABLESPACES
テーブルには、次のカラムがあります:
-
SPACE
テーブルスペース ID。
-
NAME
スキーマ (データベース) およびテーブル名。
-
FLAG
テーブルスペースの形式および記憶特性に関するビットレベルの情報を表す数値。
-
ROW_FORMAT
テーブルスペースの行形式 (
Compact or Redundant
、Dynamic
またはCompressed
またはUndo
)。 このカラムのデータは、データファイルに存在するテーブルスペースフラグ情報から解釈されます。テーブルスペースの行形式が
Redundant
またはCompact
の場合、このフラグ情報から判断する方法はありません。そのため、使用可能なROW_FORMAT
値のいずれかがCompact or Redundant
になります。 -
PAGE_SIZE
テーブルスペースのページサイズ。 このカラムのデータは、
.ibd
file に存在するテーブルスペースフラグ情報から解釈されます。 -
ZIP_PAGE_SIZE
テーブルスペースの Zip ページサイズ。 このカラムのデータは、
.ibd
file に存在するテーブルスペースフラグ情報から解釈されます。 -
SPACE_TYPE
テーブルスペースのタイプ。 使用可能な値は、一般的なテーブルスペースの場合は
General
、file-per-table テーブルスペースの場合はSingle
、システムテーブルスペースの場合はSystem
、undo テーブルスペースの場合はUndo
です。 -
FS_BLOCK_SIZE
ホールパンチングに使用される単位サイズであるファイルシステムのブロックサイズ。 このカラムは、
InnoDB
transparent page compression 機能に関連します。 -
FILE_SIZE
圧縮解除されたファイルの最大サイズを表す、ファイルの見かけ上のサイズ。 このカラムは、
InnoDB
transparent page compression 機能に関連します。 -
ALLOCATED_SIZE
ファイルの実際のサイズ。これは、ディスクに割り当てられた領域の量です。 このカラムは、
InnoDB
transparent page compression 機能に関連します。 -
AUTOEXTEND_SIZE
テーブルスペースの自動拡張サイズ。 このカラムは、MySQL 8.0.23 で追加されました。
-
SERVER_VERSION
テーブルスペースを作成した MySQL バージョン、テーブルスペースのインポート先の MySQL バージョン、または最後のメジャー MySQL バージョンアップグレードのバージョン。 この値は、MySQL 8.0 からのアップグレードなど、リリースシリーズアップグレードによって変更されません。
x
から 8.0 へ。y
。 値は、テーブルスペースの「「作成」」マーカーまたは「「認定」」マーカーとみなすことができます。 -
SPACE_VERSION
テーブルスペース形式の変更を追跡するために使用されるテーブルスペースのバージョン。
-
ENCRYPTION
テーブルスペースが暗号化されているかどうか。 このカラムは、MySQL 8.0.13 で追加されました。
-
STATE
テーブルスペースの状態。 このカラムは、MySQL 8.0.14 で追加されました。
file-per-table および general テーブルスペースの場合、状態は次のとおりです:
normal
: テーブルスペースは正常でアクティブです。discarded
: テーブルスペースがALTER TABLE ... DISCARD TABLESPACE
ステートメントによって破棄されました。corrupted
: テーブルスペースは、InnoDB
によって破損として識別されます。
undo テーブルスペースの場合、状態は次のとおりです:
active
: undo テーブルスペースのロールバックセグメントは、新しいトランザクションに割り当てることができます。inactive
: undo テーブルスペースのロールバックセグメントは、新しいトランザクションでは使用されなくなりました。 切捨てプロセスが進行中です。 undo テーブルスペースがパージスレッドによって暗黙的に選択されたか、ALTER UNDO TABLESPACE ... SET INACTIVE
ステートメントによって非アクティブにされました。empty
: undo テーブルスペースは切り捨てられ、アクティブではなくなりました。 これで、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.0.23
SPACE_VERSION: 1
ENCRYPTION: N
STATE: normal
メモ
このテーブルをクエリーするには
PROCESS
権限が必要です。INFORMATION_SCHEMA
COLUMNS
テーブルまたはSHOW COLUMNS
ステートメントを使用して、データ型やデフォルト値など、このテーブルのカラムに関する追加情報を表示します。