Documentation Home
MySQL 8.0 リファレンスマニュアル
Download this Manual
PDF (US Ltr) - 36.1Mb
PDF (A4) - 36.2Mb


MySQL 8.0 リファレンスマニュアル  /  ...  /  INFORMATION_SCHEMA.FILES からの InnoDB テーブルスペースメタデータの取得

このページは機械翻訳したものです。

15.15.8 INFORMATION_SCHEMA.FILES からの InnoDB テーブルスペースメタデータの取得

INFORMATION_SCHEMA.FILES テーブルは、file-per-table tablespacesgeneral tablespacessystem tablespacetemporary table tablespacesundo tablespaces (存在する場合) など、すべての InnoDB テーブルスペースタイプに関するメタデータを提供します。

このセクションでは、InnoDB 固有の使用例を示します。 INFORMATION_SCHEMA.FILES テーブルで提供されるデータの詳細は、セクション26.15「INFORMATION_SCHEMA FILES テーブル」 を参照してください。

注記

INNODB_TABLESPACES テーブルおよび INNODB_DATAFILES テーブルでは、InnoDB テーブルスペースに関するメタデータも提供されますが、データは file-per-table、general および undo テーブルスペースに制限されます。

このクエリーは、InnoDB システムテーブルスペースに関するメタデータを、InnoDB テーブルスペースに関連する INFORMATION_SCHEMA.FILES テーブルのフィールドから取得します。 InnoDB に関連しない INFORMATION_SCHEMA.FILES フィールドは、常に NULL を返し、クエリーから除外されます。

Press CTRL+C to copy
mysql> SELECT FILE_ID, FILE_NAME, FILE_TYPE, TABLESPACE_NAME, FREE_EXTENTS, TOTAL_EXTENTS, EXTENT_SIZE, INITIAL_SIZE, MAXIMUM_SIZE, AUTOEXTEND_SIZE, DATA_FREE, STATUS ENGINE FROM INFORMATION_SCHEMA.FILES WHERE TABLESPACE_NAME LIKE 'innodb_system' \G *************************** 1. row *************************** FILE_ID: 0 FILE_NAME: ./ibdata1 FILE_TYPE: TABLESPACE TABLESPACE_NAME: innodb_system FREE_EXTENTS: 0 TOTAL_EXTENTS: 12 EXTENT_SIZE: 1048576 INITIAL_SIZE: 12582912 MAXIMUM_SIZE: NULL AUTOEXTEND_SIZE: 67108864 DATA_FREE: 4194304 ENGINE: NORMAL

このクエリーは、InnoDB file-per-table および一般テーブルスペースの FILE_ID (スペース ID と同等) および FILE_NAME (パス情報を含む) を取得します。 File-per-table および general テーブルスペースには、.ibd ファイル拡張子が付いています。

Press CTRL+C to copy
mysql> SELECT FILE_ID, FILE_NAME FROM INFORMATION_SCHEMA.FILES WHERE FILE_NAME LIKE '%.ibd%' ORDER BY FILE_ID; +---------+---------------------------------------+ | FILE_ID | FILE_NAME | +---------+---------------------------------------+ | 2 | ./mysql/plugin.ibd | | 3 | ./mysql/servers.ibd | | 4 | ./mysql/help_topic.ibd | | 5 | ./mysql/help_category.ibd | | 6 | ./mysql/help_relation.ibd | | 7 | ./mysql/help_keyword.ibd | | 8 | ./mysql/time_zone_name.ibd | | 9 | ./mysql/time_zone.ibd | | 10 | ./mysql/time_zone_transition.ibd | | 11 | ./mysql/time_zone_transition_type.ibd | | 12 | ./mysql/time_zone_leap_second.ibd | | 13 | ./mysql/innodb_table_stats.ibd | | 14 | ./mysql/innodb_index_stats.ibd | | 15 | ./mysql/slave_relay_log_info.ibd | | 16 | ./mysql/slave_master_info.ibd | | 17 | ./mysql/slave_worker_info.ibd | | 18 | ./mysql/gtid_executed.ibd | | 19 | ./mysql/server_cost.ibd | | 20 | ./mysql/engine_cost.ibd | | 21 | ./sys/sys_config.ibd | | 23 | ./test/t1.ibd | | 26 | /home/user/test/test/t2.ibd | +---------+---------------------------------------+

このクエリーは、InnoDB グローバル一時テーブルスペースの FILE_ID および FILE_NAME を取得します。 グローバル一時テーブルスペースのファイル名には、接頭辞として ibtmp が付きます。

Press CTRL+C to copy
mysql> SELECT FILE_ID, FILE_NAME FROM INFORMATION_SCHEMA.FILES WHERE FILE_NAME LIKE '%ibtmp%'; +---------+-----------+ | FILE_ID | FILE_NAME | +---------+-----------+ | 22 | ./ibtmp1 | +---------+-----------+

同様に、InnoDB undo テーブルスペースのファイル名には undo という接頭辞が付きます。 次のクエリーは、InnoDB undo テーブルスペースの FILE_ID および FILE_NAME を戻します。

Press CTRL+C to copy
mysql> SELECT FILE_ID, FILE_NAME FROM INFORMATION_SCHEMA.FILES WHERE FILE_NAME LIKE '%undo%';