Rechercher dans le manuel MySQL

15.14.8 Retrieving InnoDB Tablespace Metadata from INFORMATION_SCHEMA.FILES

The INFORMATION_SCHEMA.FILES table provides metadata about all InnoDB tablespace types including file-per-table tablespaces, general tablespaces, the system tablespace, temporary table tablespaces, and undo tablespaces (if present).

This section provides InnoDB-specific usage examples. For more information about data provided by the INFORMATION_SCHEMA.FILES table, see Section 25.10, “The INFORMATION_SCHEMA FILES Table”.

Note

The INNODB_TABLESPACES and INNODB_DATAFILES tables also provide metadata about InnoDB tablespaces, but data is limited to file-per-table, general, and undo tablespaces.

This query retrieves metadata about the InnoDB system tablespace from fields of the INFORMATION_SCHEMA.FILES table that are pertinent to InnoDB tablespaces. INFORMATION_SCHEMA.FILES fields that are not relevant to InnoDB always return NULL, and are excluded from the query.

  1. mysql> SELECT FILE_ID, FILE_NAME, FILE_TYPE, TABLESPACE_NAME, FREE_EXTENTS,
  2.        TOTAL_EXTENTS,  EXTENT_SIZE, INITIAL_SIZE, MAXIMUM_SIZE, AUTOEXTEND_SIZE, DATA_FREE, STATUS ENGINE
  3.        FROM INFORMATION_SCHEMA.FILES WHERE TABLESPACE_NAME LIKE 'innodb_system' \G
  4. *************************** 1. row ***************************
  5.         FILE_ID: 0
  6.       FILE_NAME: ./ibdata1
  7.       FILE_TYPE: TABLESPACE
  8. TABLESPACE_NAME: innodb_system
  9.    FREE_EXTENTS: 0
  10.   TOTAL_EXTENTS: 12
  11.     EXTENT_SIZE: 1048576
  12.    INITIAL_SIZE: 12582912
  13.    MAXIMUM_SIZE: NULL
  14. AUTOEXTEND_SIZE: 67108864
  15.       DATA_FREE: 4194304
  16.          ENGINE: NORMAL

This query retrieves the FILE_ID (equivalent to the space ID) and the FILE_NAME (which includes path information) for InnoDB file-per-table and general tablespaces. File-per-table and general tablespaces have a .ibd file extension.

  1. mysql> SELECT FILE_ID, FILE_NAME FROM INFORMATION_SCHEMA.FILES
  2.        WHERE FILE_NAME LIKE '%.ibd%' ORDER BY FILE_ID;
  3.     +---------+---------------------------------------+
  4.     | FILE_ID | FILE_NAME                             |
  5.     +---------+---------------------------------------+
  6.     |       2 | ./mysql/plugin.ibd                    |
  7.     |       3 | ./mysql/servers.ibd                   |
  8.     |       4 | ./mysql/help_topic.ibd                |
  9.     |       5 | ./mysql/help_category.ibd             |
  10.     |       6 | ./mysql/help_relation.ibd             |
  11.     |       7 | ./mysql/help_keyword.ibd              |
  12.     |       8 | ./mysql/time_zone_name.ibd            |
  13.     |       9 | ./mysql/time_zone.ibd                 |
  14.     |      10 | ./mysql/time_zone_transition.ibd      |
  15.     |      11 | ./mysql/time_zone_transition_type.ibd |
  16.     |      12 | ./mysql/time_zone_leap_second.ibd     |
  17.     |      13 | ./mysql/innodb_table_stats.ibd        |
  18.     |      14 | ./mysql/innodb_index_stats.ibd        |
  19.     |      15 | ./mysql/slave_relay_log_info.ibd      |
  20.     |      16 | ./mysql/slave_master_info.ibd         |
  21.     |      17 | ./mysql/slave_worker_info.ibd         |
  22.     |      18 | ./mysql/gtid_executed.ibd             |
  23.     |      19 | ./mysql/server_cost.ibd               |
  24.     |      20 | ./mysql/engine_cost.ibd               |
  25.     |      21 | ./sys/sys_config.ibd                  |
  26.     |      23 | ./test/t1.ibd                         |
  27.     |      26 | /home/user/test/test/t2.ibd           |
  28.     +---------+---------------------------------------+

This query retrieves the FILE_ID and FILE_NAME for the InnoDB global temporary tablespace. Global temporary tablespace file names are prefixed by ibtmp.

  1. mysql> SELECT FILE_ID, FILE_NAME FROM INFORMATION_SCHEMA.FILES
  2.        WHERE FILE_NAME LIKE '%ibtmp%';
  3. +---------+-----------+
  4. | FILE_ID | FILE_NAME |
  5. +---------+-----------+
  6. |      22 | ./ibtmp1  |
  7. +---------+-----------+

Similarly, InnoDB undo tablespace file names are prefixed by undo. The following query returns the FILE_ID and FILE_NAME for InnoDB undo tablespaces.

  1. mysql> SELECT FILE_ID, FILE_NAME FROM INFORMATION_SCHEMA.FILES
  2.        WHERE FILE_NAME LIKE '%undo%';

Rechercher dans le manuel MySQL

Traduction non disponible

Le manuel MySQL n'est pas encore traduit en français sur l'infobrol. Seule la version anglaise est disponible pour l'instant.

Document créé le 26/06/2006, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/mysql-rf-innodb-information-schema-files-table.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :en Manuel MySQL : https://dev.mysql.com/

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut