zoukankan      html  css  js  c++  java
  • InnoDB INFORMATION_SCHEMA Temporary Table Info Table

    InnoDB INFORMATION_SCHEMA Temporary Table Info Table

    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. INNODB_TEMP_TABLE_INFO

    INNODB_TEMP_TABLE_INFO提供有关InnoDB实例中当前活动的用户创建的InnoDB临时表的信息。 它不提供有关优化程序使用的内部InnoDB临时表的信息。 INNODB_TEMP_TABLE_INFO表在首次查询时创建,仅存在于内存中。 它不会持久存储到磁盘。

    有关用法信息和示例,请参见“InnoDB INFORMATION_SCHEMA临时表信息表”。

    INNODB_TEMP_TABLE_INFO表包含以下列:

    • TABLE_ID :active 临时表的表ID。
    • NAME :active 临时表的名称。
    • N_COLS :临时表中的列数。该数字始终包含由InnoDB创建的三个隐藏列(DB_ROW_ID,DB_TRX_ID和DB_ROLL_PTR)。
    • SPACE :临时表所在的表空间的表空间标识符(数值)。 在5.7中,所有非压缩的InnoDB临时表都驻留在共享的临时表空间中。 共享临时表空间的数据文件由innodb_temp_data_file_path系统变量定义。 默认情况下,共享临时表空间有一个名为ibtmp1的数据文件,该文件位于数据目录中。 压缩的临时表驻留在临时文件目录中的单独表空间中,由tmpdir定义。 临时表空间的SPACE ID始终为非零值,并在服务器重新启动时动态生成。
    • PER_TABLE_TABLESPACE:值TRUE表示临时表驻留在单独表空间中。值FALSE表示临时表驻留在共享临时表空间中。
    • IS_COMPRESSED :值TRUE表示临时表已压缩

    示例

    mysql> CREATE TEMPORARY TABLE t13(c1 INT PRIMARY KEY) ENGINE=INNODB;
    
    ERROR 1787 (HY000): Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context.  These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions.
    
    解决方法:
    
    mysql> set autocommit = 1;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> CREATE TEMPORARY TABLE t13(c1 INT PRIMARY KEY) ENGINE=INNODB;
    Query OK, 0 rows affected (0.00 sec)
    
    
    mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_TEMP_TABLE_INFO;
    +----------+--------------+--------+-------+----------------------+---------------+
    | TABLE_ID | NAME         | N_COLS | SPACE | PER_TABLE_TABLESPACE | IS_COMPRESSED |
    +----------+--------------+--------+-------+----------------------+---------------+
    |      122 | #sql1619_f_0 |      4 |   227 | FALSE                | FALSE         |
    +----------+--------------+--------+-------+----------------------+---------------+
    1 row in set (0.00 sec)
    

    Notes

    • 该表主要用于专家级监控。

    • 您必须具有PROCESS权限才能查询此表。

    • 使用INFORMATION_SCHEMA COLUMNS表或SHOW COLUMNS语句查看有关此表的列的其他信息,包括数据类型和默认值。

  • 相关阅读:
    Day 83 VUE——组件、插槽、生命周期
    Power BI制作GDP动态排行榜
    SQL中为什么经常要加WITH(NOLOCK)
    ant-desin-vue——table全选时自定义的禁用行也被选上,且最后一行不选中问题
    ant-design-vue——a-select下拉框值为空字串时,高度偏窄问题
    ant-desgin-vue——tree自定义节点不可选用的置灰或禁用
    js——在A页面打开新页面B,关闭新页面B后刷新A页面
    Vue You may have an infinite update loop in a component render function.
    js实现继承的方法中为何总是要修正constructor方法的指向呢?
    Spring boot 扫描不到 mybatis 接口包
  • 原文地址:https://www.cnblogs.com/wanbin/p/9514616.html
Copyright © 2011-2022 走看看