MySQL 8.0 リファレンスマニュアル


MySQL 8.0 リファレンスマニュアル  /  InnoDB ストレージエンジン  /  InnoDB の制限および制限事項

15.23 InnoDB の制限および制限事項

このセクションでは、InnoDB ストレージエンジンの制限事項と制限事項について説明します。

  • 内部 InnoDB カラム (DB_ROW_IDDB_TRX_ID および DB_ROLL_PTR を含む) の名前と一致するカラム名を持つテーブルは作成できません。 この制限は、任意の大文字と小文字での名前の使用に適用されます。

    mysql> CREATE TABLE t1 (c1 INT, db_row_id INT) ENGINE=INNODB;
    ERROR 1166 (42000): Incorrect column name 'db_row_id'
  • SHOW TABLE STATUS では、テーブルで予約されている物理サイズを除き、InnoDB テーブルの正確な統計は提供されません。 行カウントは、単に SQL 最適化で使用される概算見積もりです。

  • 並列トランザクションでは同時にさまざまな数の行が参照される可能性があるため、InnoDB のテーブルには、行の内部的なカウントが保持されません。 したがって、SELECT COUNT(*) ステートメントでは、現在のトランザクションで参照可能な行のみがカウントされます。

    InnoDB による SELECT COUNT(*) ステートメントの処理方法の詳細は、セクション12.20.1「集計関数の説明」COUNT() の説明を参照してください。

  • ROW_FORMAT=COMPRESSED は、16KB を超えるページサイズではサポートされていません。

  • 特定の InnoDB ページサイズ (innodb_page_size) を使用する MySQL インスタンスでは、異なるページサイズを使用するインスタンスのデータファイルまたはログファイルを使用できません。

  • トランスポータブルテーブルスペース機能を使用したテーブルのインポートに関連する制限については、Table Import Limitations を参照してください。

  • オンライン DDL に関連する制限については、セクション15.12.6「オンライン DDL の制限事項」 を参照してください。

  • 一般的なテーブルスペースに関連する制限については、テーブルスペースの一般的な制限事項 を参照してください。

  • 保存データ暗号化に関連する制限については、暗号化の制限事項 を参照してください。


関連キーワード:  InnoDB, テーブル, 構成, スペース, 圧縮, ロック, インデックス, INFORMATION, SCHEMA, 制限