该INNODB_TEMP_TABLE_INFO表提供有关在
实例InnoDB
中处于活动状态的用户创建的临时表的信息。InnoDB它不提供有关
InnoDB优化器使用的内部临时表的信息。该INNODB_TEMP_TABLE_INFO表在第一次查询时创建,仅存在于内存中,不会持久化到磁盘。
有关使用信息和示例,请参阅 第 14.16.7 节,“InnoDB INFORMATION_SCHEMA 临时表信息表”。
该INNODB_TEMP_TABLE_INFO表有以下列:
TABLE_ID临时表的表 ID。
NAME临时表的名称。
N_COLS临时表中的列数。
InnoDB该数字包括由(DB_ROW_ID、DB_TRX_ID和 )创建的三个隐藏列DB_ROLL_PTR。SPACE临时表所在的临时表空间的ID。在 5.7 中,非压缩
InnoDB临时表驻留在共享临时表空间中。共享临时表空间的数据文件由innodb_temp_data_file_path系统变量定义。默认情况下,名为 的共享临时表空间有一个数据文件,ibtmp1位于数据目录中。压缩的临时表驻留在单独的文件表空间中,这些表空间位于由tmpdir. 临时表空间 ID 是在服务器重新启动时动态生成的非零值。PER_TABLE_TABLESPACE值
TRUE表示临时表驻留在单独的 file-per-table 表空间中。值FALSE表示临时表驻留在共享临时表空间中。IS_COMPRESSED值
TRUE表示临时表已压缩。
例子
mysql> CREATE TEMPORARY TABLE t1 (c1 INT PRIMARY KEY) ENGINE=INNODB;
mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_TEMP_TABLE_INFO\G
*************************** 1. row ***************************
TABLE_ID: 38
NAME: #sql26cf_6_0
N_COLS: 4
SPACE: 52
PER_TABLE_TABLESPACE: FALSE
IS_COMPRESSED: FALSE
笔记
该表主要用于专家级监控。
您必须具有
PROCESS查询此表的权限。使用
INFORMATION_SCHEMACOLUMNS表或SHOW COLUMNS语句查看有关此表的列的其他信息,包括数据类型和默认值。