どのようにしてMySQLでテーブルパーティションを作成するのですか?

MySQLはPARTITION BY句を使用してテーブルをパーティション分割できます。以下の手順でテーブルのパーティション分割を作成できます。

  1. 一般的なテーブルを作成し、列とデータ型を定義します。
CREATE TABLE mytable (
  id INT,
  name VARCHAR(50),
  age INT
);
  1. ALTER TABLEステートメントでパーティションを追加します。
ALTER TABLE mytable
PARTITION BY RANGE(id) (
  PARTITION p0 VALUES LESS THAN (10),
  PARTITION p1 VALUES LESS THAN (20),
  PARTITION p2 VALUES LESS THAN (MAXVALUE)
);

上記の例では、表は 3 つのパーティションに分割されています。パーティション p0 には、ID が 10 より小さいすべての行が含まれ、p1 には ID が 20 より小さいすべての行が含まれ、p2 には残りの行が含まれています。

  1. ALTER TABLE句を利用してパーティションを追加できます。
ALTER TABLE mytable
ADD PARTITION (
  PARTITION p3 VALUES LESS THAN (30)
);

上記の例では、30より小さいIDの行すべてを含む、新しいパーティションp3が追加されました。

パーティション作成前は、テーブルに主キーまたは一意インデックスがないことを確認する必要があります。パーティション列は数値型または日付/時刻型の列である必要もあります。

bannerAds