MySQL 8.0 リファレンスマニュアル MySQL NDB Cluster 8.0 を含む

このページは機械翻訳したものです。

13.1.9.1 ALTER TABLE パーティション操作

ALTER TABLE のパーティション関連の句をパーティションテーブルとともに使用して、パーティションの再パーティション化、パーティションの追加、削除、破棄、インポート、マージおよび分割、パーティション化メンテナンスの実行を行うことができます。

ALTER TABLE ステートメントには、ほかの変更指定に加えて、PARTITION BY または REMOVE PARTITIONING 句を含めることができますが、PARTITION BY または REMOVE PARTITIONING 句は、ほかのどの指定よりもあとの最後に指定する必要があります。

ADD PARTITIONDROP PARTITIONCOALESCE PARTITIONREORGANIZE PARTITIONANALYZE PARTITIONCHECK PARTITION、および REPAIR PARTITION オプションは、個々のパーティションに対して機能するため、1 つの ALTER TABLE 内でほかの変更指定と組み合わせることはできません。 詳細は、セクション13.1.9.1「ALTER TABLE パーティション操作」を参照してください。

特定の ALTER TABLE ステートメントでは、次のいずれか 1 つのオプションの単一インスタンスのみを使用できます。PARTITION BYADD PARTITIONDROP PARTITIONTRUNCATE PARTITIONEXCHANGE PARTITIONREORGANIZE PARTITION、または COALESCE PARTITIONANALYZE PARTITIONCHECK PARTITIONOPTIMIZE PARTITIONREBUILD PARTITIONREMOVE PARTITIONING

たとえば、次の 2 つのステートメントは無効です。

ALTER TABLE t1 ANALYZE PARTITION p1, ANALYZE PARTITION p2;

ALTER TABLE t1 ANALYZE PARTITION p1, CHECK PARTITION p2;

最初のケースでは、次のように、分析される両方のパーティションを一覧表示した 1 つの ANALYZE PARTITION オプションを含む 1 つのステートメントを使用して、テーブル t1 のパーティション p1p2 を同時に分析できます。

ALTER TABLE t1 ANALYZE PARTITION p1, p2;

2 番目のケースでは、同じテーブルの別のパーティションに対する ANALYZE 操作と CHECK 操作を同時に実行することはできません。 代わりに、次のように、2 つの個別のステートメントを発行する必要があります。

ALTER TABLE t1 ANALYZE PARTITION p1;
ALTER TABLE t1 CHECK PARTITION p2;

サブパーティションに対する REBUILD 操作は現在サポートされていません。 REBUILD キーワードはサブパーティションでは明示的に禁止されており、使用すると ALTER TABLE はエラーで失敗します。

チェックまたは修復するパーティションに重複キーエラーが含まれている場合、CHECK PARTITION および REPAIR PARTITION の操作は失敗します。

これらのステートメントの詳細は、セクション24.3.4「パーティションの保守」 を参照してください。