このページは機械翻訳したものです。
      データディクショナリの導入により、次の INFORMATION_SCHEMA テーブルがデータディクショナリテーブルのビューとして実装されます:
    
- CHARACTER_SETS
- CHECK_CONSTRAINTS
- COLLATIONS
- COLLATION_CHARACTER_SET_APPLICABILITY
- COLUMNS
- COLUMN_STATISTICS
- EVENTS
- FILES
- INNODB_COLUMNS
- INNODB_DATAFILES
- INNODB_FIELDS
- INNODB_FOREIGN
- INNODB_FOREIGN_COLS
- INNODB_INDEXES
- INNODB_TABLES
- INNODB_TABLESPACES
- INNODB_TABLESPACES_BRIEF
- INNODB_TABLESTATS
- KEY_COLUMN_USAGE
- KEYWORDS
- PARAMETERS
- PARTITIONS
- REFERENTIAL_CONSTRAINTS
- RESOURCE_GROUPS
- ROUTINES
- SCHEMATA
- STATISTICS
- ST_GEOMETRY_COLUMNS
- ST_SPATIAL_REFERENCE_SYSTEMS
- TABLES
- TABLE_CONSTRAINTS
- TRIGGERS
- VIEWS
- VIEW_ROUTINE_USAGE
- VIEW_TABLE_USAGE
      これらのテーブルに対するクエリーは、他の低速な方法ではなくデータディクショナリテーブルから情報を取得するため、より効率的になりました。 特に、データディクショナリテーブルのビューである INFORMATION_SCHEMA テーブルごとに、次のようにします: 
    
- サーバーは、 - INFORMATION_SCHEMAテーブルのクエリーごとに一時テーブルを作成する必要がなくなりました。
- 基礎となるデータディクショナリテーブルに、ディレクトリスキャンによって以前に取得された値 (データベース名やデータベース内のテーブル名を列挙する場合など) またはファイルオープン操作 ( - .frmファイルから情報を読み取る場合など) が格納されている場合、これらの値に対する- INFORMATION_SCHEMAクエリーでは、かわりにテーブルルックアップが使用されるようになりました。 (また、ビュー以外の- INFORMATION_SCHEMAテーブルの場合でも、データベース名やテーブル名などの値はデータディクショナリから参照によって取得されるため、ディレクトリまたはファイルのスキャンは必要ありません。)
- 基礎となるデータディクショナリテーブルのインデックスを使用すると、オプティマイザは、クエリーごとに一時テーブルを使用して - INFORMATION_SCHEMAテーブルを処理した以前の実装に当てはまらない効率的なクエリー実行計画を作成できます。
      前述の改善は、データディクショナリテーブルのビューである INFORMATION_SCHEMA テーブルに対応する情報を表示する SHOW ステートメントにも適用されます。 たとえば、SHOW DATABASES では、SCHEMATA テーブルと同じ情報が表示されます。 
    
      データディクショナリテーブルのビューの導入に加えて、STATISTICS テーブルおよび TABLES テーブルに含まれるテーブル統計がキャッシュされ、INFORMATION_SCHEMA クエリーのパフォーマンスが向上しました。 information_schema_stats_expiry システム変数は、キャッシュされたテーブルの統計が期限切れになるまでの期間を定義します。 デフォルトは 86400 秒 (24 時間) です。 キャッシュされた統計がない場合、または統計が期限切れになっている場合は、テーブル統計カラムのクエリー時にストレージエンジンから統計が取得されます。 特定のテーブルのキャッシュされた値をいつでも更新するには、ANALYZE TABLE を使用 
    
      information_schema_stats_expiry を 0 に設定すると、INFORMATION_SCHEMA クエリーでストレージエンジンから直接最新の統計を取得できます。これは、キャッシュされた統計の取得ほど高速ではありません。
    
詳細は、セクション8.2.3「INFORMATION_SCHEMA クエリーの最適化」を参照してください。
      MySQL 8.0 の INFORMATION_SCHEMA テーブルはデータディクショナリに密接に関連付けられているため、いくつかの使用方法が異なります。 セクション14.7「データディクショナリの使用方法の違い」を参照してください。