MySQL 8.0 リファレンスマニュアル MySQL NDB Cluster 8.0 を含む
このページは機械翻訳したものです。
INNODB_TEMP_TABLE_INFO
は、InnoDB
インスタンスでアクティブなユーザー作成の InnoDB
一時テーブルに関する情報を提供します。 オプティマイザで使用される内部 InnoDB
一時テーブルに関する情報は提供されません。
mysql> SHOW TABLES FROM INFORMATION_SCHEMA LIKE 'INNODB_TEMP%';
+---------------------------------------------+
| Tables_in_INFORMATION_SCHEMA (INNODB_TEMP%) |
+---------------------------------------------+
| INNODB_TEMP_TABLE_INFO |
+---------------------------------------------+
テーブル定義については、セクション26.51.28「INFORMATION_SCHEMA INNODB_TEMP_TABLE_INFO テーブル」を参照してください。
例 15.12 INNODB_TEMP_TABLE_INFO
この例では、INNODB_TEMP_TABLE_INFO
テーブルの特性を示します。
単純な InnoDB
一時テーブルを作成します:
mysql> CREATE TEMPORARY TABLE t1 (c1 INT PRIMARY KEY) ENGINE=INNODB;
INNODB_TEMP_TABLE_INFO
をクエリーして、一時テーブルのメタデータを表示します。
mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_TEMP_TABLE_INFO\G
*************************** 1. row ***************************
TABLE_ID: 194
NAME: #sql7a79_1_0
N_COLS: 4
SPACE: 182
TABLE_ID
は、一時テーブルの一意の識別子です。 NAME
カラムには、「#sql」 という接頭辞が付いた一時テーブルのシステム生成名が表示されます。 InnoDB
では常に 3 つの非表示のテーブルのカラム (DB_ROW_ID
、DB_TRX_ID
および DB_ROLL_PTR
) が作成されるため、カラム数 (N_COLS
) は 1 ではなく 4 です。
MySQL を再起動し、INNODB_TEMP_TABLE_INFO
をクエリーします。
mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_TEMP_TABLE_INFO\G
サーバーの停止時に INNODB_TEMP_TABLE_INFO
とそのデータがディスクに永続化されないため、空のセットが返されます。
新しい一時テーブルを作成します。
mysql> CREATE TEMPORARY TABLE t1 (c1 INT PRIMARY KEY) ENGINE=INNODB;
INNODB_TEMP_TABLE_INFO
をクエリーして、一時テーブルのメタデータを表示します。
mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_TEMP_TABLE_INFO\G
*************************** 1. row ***************************
TABLE_ID: 196
NAME: #sql7b0e_1_0
N_COLS: 4
SPACE: 184
SPACE
ID は、サーバーの起動時に動的に生成されるため、異なる場合があります。