【MySQL】パーティションを設定/追加/削除する方法


ここではMySQLで、パーティションを設定/追加/削除する方法を紹介しています。

パーティションを設定/追加/削除する方法

パーティションの設定

パーティションはCREATE TABLE文に追記することで設定することが出来ます。

次のCREATE TABLE文では、年月でパーティションを3つ設定しています。

CREATE TABLE tab2(
  col1 varchar(10)
  ,col2 int
  ,PRIMARY KEY(col1, col2))
ENGINE = InnoDB
PARTITION BY RANGE(col2)(
      PARTITION p201001 VALUES LESS THAN (201001)
    , PARTITION p201002 VALUES LESS THAN (201002)
    , PARTITION p201003 VALUES LESS THAN (201003)
);

パーティションの追加

パーティションはALTER TABLE文で追加することが出来ます。

ALTER TABLE tab2 ADD PARTITION(
      PARTITION p201004 VALUES LESS THAN (201004)
    , PARTITION p201005 VALUES LESS THAN (201005)
    , PARTITION p201006 VALUES LESS THAN (201006)
);

実行すると次のような結果が返ってきます。

mysql> ALTER TABLE tab2 ADD PARTITION(PARTITION p201004 VALUES LESS THAN (201004), PARTITION p201005 VALUES LESS THAN (201005), PARTITION p201006 VALUES LESS THAN (201006));
Query OK, 0 rows affected (0.28 sec)
Records: 0  Duplicates: 0  Warnings: 0

パーティションの削除

パーティションの削除もALTER TABLE文で実行できます。

ALTER TABLE tab2 DROP PARTITION p201006;

実行すると次のような結果が返ってきます。

mysql> ALTER TABLE tab2 DROP PARTITION p201006;
Query OK, 0 rows affected (0.09 sec)
Records: 0  Duplicates: 0  Warnings: 0