10bet网址
MySQL 5.7参考手册
相关的文档10bet官方网站 下载本手册
PDF(美国高级主任)- 36.3 mb
PDF (A4)- 36.3 mb
手册页(TGZ)- 235.4 kb
手册页(Zip)- 347.1 kb
信息(Gzip)- 3.3 mb
信息(邮政编码)- 3.3 mb
本手册节选

MySQL 5.7参考手册/.../ InnoDB INFORMATION_SCHEMA临时表信息表

14.16.7 InnoDB INFORMATION_SCHEMA临时表信息表

INNODB_TEMP_TABLE_INFO提供有关用户创建的信息InnoDB类中活动的临时表InnoDB实例。它不提供内部信息InnoDB优化器使用的临时表。

显示INNODB_TEMP%中的表+---------------------------------------------+ | Tables_in_INFORMATION_SCHEMA (INNODB_TEMP %) | +---------------------------------------------+ | INNODB_TEMP_TABLE_INFO  | +---------------------------------------------+

有关表定义,请参见Section 24.4.27“INFORMATION_SCHEMA INNODB_TEMP_TABLE_INFO表”

例14.12 INNODB_TEMP_TABLE_INFO

的特性INNODB_TEMP_TABLE_INFO表格

  1. 创建一个简单的InnoDB临时表:

    创建临时表t1 (c1 INT PRIMARY KEY)
  2. 查询INNODB_TEMP_TABLE_INFO查看临时表元数据。

    mysql> SELECT * FROM INFORMATION_SCHEMAINNODB_TEMP_TABLE_INFO\G *************************** 1. row *************************** TABLE_ID: 194 NAME: #sql7a79_1_0 N_COLS: 4 SPACE: 182 PER_TABLE_TABLESPACE: FALSE IS_COMPRESSED: FALSE

    TABLE_ID临时表的唯一标识符。的的名字列显示系统为临时表生成的名称,该名称的前缀为# sql.列数(N_COLS)是4而不是1,因为InnoDB总是创建三个隐藏的表列(DB_ROW_IDDB_TRX_ID,DB_ROLL_PTR).PER_TABLE_TABLESPACE而且IS_COMPRESSED报告真正的用于压缩临时表。否则,这些字段报告

  3. 创建一个压缩临时表。

    创建临时表t2 (c1 INT) ROW_FORMAT=COMPRESSED ENGINE=INNODB;
  4. 查询INNODB_TEMP_TABLE_INFO一次。

    mysql> SELECT * FROM INFORMATION_SCHEMAINNODB_TEMP_TABLE_INFO\G *************************** 1. row *************************** TABLE_ID: 195 NAME: #sql7a79_1_1 N_COLS: 4 SPACE: 183 PER_TABLE_TABLESPACE: TRUE IS_COMPRESSED: TRUE *************************** 2. row *************************** TABLE_ID: 194 NAME: #sql7a79_1_0 N_COLS: 4 SPACE: 182 PER_TABLE_TABLESPACE: FALSE IS_COMPRESSED: FALSE

    PER_TABLE_TABLESPACE而且IS_COMPRESSED报告真正的用于压缩临时表。的空间压缩临时表的ID不同,因为压缩临时表是在单独的文件-表空间中创建的。在共享临时表空间(ibtmp1)并报告相同的情况空间ID。

  5. 重新启动MySQL并查询INNODB_TEMP_TABLE_INFO

    mysql> SELECT * FROM INFORMATION_SCHEMAINNODB_TEMP_TABLE_INFO\G Empty set (0.00 sec)

    返回空集的原因是INNODB_TEMP_TABLE_INFO当服务器关闭时,它的数据不会持久化到磁盘上。

  6. 创建一个新的临时表。

    创建临时表t1 (c1 INT PRIMARY KEY)
  7. 查询INNODB_TEMP_TABLE_INFO查看临时表元数据。

    mysql> SELECT * FROM INFORMATION_SCHEMAINNODB_TEMP_TABLE_INFO\G *************************** 1. row *************************** TABLE_ID: 196 NAME: #sql7b0e_1_0 N_COLS: 4 SPACE: 184 PER_TABLE_TABLESPACE: FALSE IS_COMPRESSED: FALSE

    空间ID可能不同,因为它是在服务器启动时动态生成的。