Documentation Home
MySQL 5.6 リファレンスマニュアル
Download this Manual
PDF (US Ltr) - 26.8Mb
PDF (A4) - 26.9Mb
HTML Download (TGZ) - 7.1Mb
HTML Download (Zip) - 7.2Mb


MySQL 5.6 リファレンスマニュアル  /  ...  /  ストレージエンジンに関連するパーティショニング制限

19.6.2 ストレージエンジンに関連するパーティショニング制限

次の制限は、テーブルのユーザー定義パーティショニングでストレージエンジンを使用する際に適用されます。

MERGE ストレージエンジン  ユーザー定義パーティショニングと MERGE ストレージエンジンは互換性を持ちません。MERGE ストレージエンジンを使用するテーブルはパーティション化できません。パーティション化されたテーブルはマージできません。

FEDERATED ストレージエンジン  FEDERATED テーブルのパーティショニングはサポートされません。パーティション化された FEDERATED テーブルを作成することはできません。

CSV ストレージエンジン  CSV ストレージエンジンを使用するパーティション化されたテーブルはサポートされません。パーティション化された CSV テーブルを作成することはできません。

InnoDB ストレージエンジン  InnoDB 外部キーと MySQL パーティショニングは互換性を持ちません。パーティション化された InnoDB テーブルは、外部キー参照を持つことができず、外部キーによって参照されるカラムを持つこともできません。外部キーを持っていたり、外部キーによって参照されたりする InnoDB テーブルはパーティション化できません。

また、ALTER TABLE ... OPTIMIZE PARTITION は、InnoDB ストレージエンジンを使用するパーティション化されたテーブルで正しく動作しません。そのようなテーブルの場合は、代わりに ALTER TABLE ... REBUILD PARTITION および ALTER TABLE ... ANALYZE PARTITION を使用してください。詳細は、セクション13.1.7.1「ALTER TABLE パーティション操作」を参照してください。

NDB ストレージエンジン (MySQL Cluster)  KEY (LINEAR KEY を含む) によるパーティショニングは、NDB ストレージエンジンでサポートされる唯一のパーティショニングタイプです。MySQL Cluster NDB 7.3 では、[LINEAR] KEY 以外のパーティショニングタイプを使用して MySQL Cluster テーブルを作成することはできず、それを試みるとエラーで失敗します。

また、NDB テーブルに定義できる最大パーティション数は、クラスター内のデータノードとノードグループの数、使用している MySQL Cluster ソフトウェアのバージョン、およびその他の要因に依存します。詳細は、NDB とユーザー定義のパーティション化を参照してください。

ユーザーパーティション化された NDB テーブルが次の 2 つの要件のいずれかまたは両方を満たさなくなる CREATE TABLE ステートメントおよび ALTER TABLE ステートメントは許可されず、エラーで失敗します。

  1. テーブルに明示的な主キーが存在する必要があります。

  2. テーブルのパーティショニング式に指定されたすべてのカラムが主キーの一部である必要があります。

例外  ユーザーパーティション化された NDB テーブルが空のカラムリストを使用して (つまり、PARTITION BY KEY() または PARTITION BY LINEAR KEY() を使用して) 作成された場合、明示的な主キーは必要ありません。

パーティション化されたテーブルをアップグレードする  アップグレードを実行するときに、KEY によってパーティション化され、NDB 以外のストレージエンジンを使用するテーブルは、ダンプしてリロードする必要があります。

すべてのパーティションに同じストレージエンジン  パーティション化されたテーブルのすべてのパーティションは、同じストレージエンジンを使用する必要があり、それがテーブルが全体として使用する同じストレージエンジンである必要があります。また、テーブルレベルでエンジンを指定しない場合は、パーティション化されたテーブルを作成または変更するときに次のいずれかを行う必要があります。

  • 任意のパーティションまたはサブパーティションにエンジンを指定しない

  • すべてのパーティションまたはサブパーティションにエンジンを指定する


User Comments
User comments in this section are, as the name implies, provided by MySQL users. The MySQL documentation team is not responsible for, nor do they endorse, any of the information provided here.
Sign Up Login You must be logged in to post a comment.