Spec-Zone.ru › MySQL 8.4

17.15.7 Таблица информации о временных таблицах InnoDB INFORMATION_SCHEMA

INNODB_TEMP_TABLE_INFO предоставляет информацию о временных таблицах, созданных пользователем, которые активны в текущей InnoDB инстанции. Она не содержит информации о внутренних InnoDB временных таблицах, используемых оптимизатором.

mysql> SHOW TABLES FROM INFORMATION_SCHEMA LIKE 'INNODB_TEMP%';
+---------------------------------------------+
| Tables_in_INFORMATION_SCHEMA (INNODB_TEMP%) |
+---------------------------------------------+
| INNODB_TEMP_TABLE_INFO                      |
+---------------------------------------------+

Для определения таблицы, см. Раздел 28.4.27, «Таблица INFORMATION_SCHEMA INNODB_TEMP_TABLE_INFO».

Пример 17.12 INNODB_TEMP_TABLE_INFO

Этот пример демонстрирует характеристики таблицы INNODB_TEMP_TABLE_INFO.

  1. Создайте простую InnoDB временную таблицу:

    mysql> CREATE TEMPORARY TABLE t1 (c1 INT PRIMARY KEY) ENGINE=INNODB;
    
  2. Запросите 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”. Количество столбцов (N_COLS) равно 4, а не 1, потому что InnoDB всегда создает три скрытых столбца таблицы (DB_ROW_ID, DB_TRX_ID и DB_ROLL_PTR).

  3. Перезапустите MySQL и запросите INNODB_TEMP_TABLE_INFO.

    mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_TEMP_TABLE_INFO\G
    

    Возвращается пустой результат, потому что INNODB_TEMP_TABLE_INFO и ее данные не сохраняются на диск при выключении сервера.

  4. Создайте новую временную таблицу.

    mysql> CREATE TEMPORARY TABLE t1 (c1 INT PRIMARY KEY) ENGINE=INNODB;
    
  5. Запросите 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 может отличаться, так как он динамически генерируется при запуске сервера.


© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/innodb-information-schema-temp-table-info.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API