MySQLマルチカラムパーティション
1396 ワード
MySQL 5.5 COLUMNSパーティションの例
テーブルの作成:
注意2点:1、5.5 COLUMNSパーティションを追加すると、時間変換関数は不要になります.2、パーティションフィールドはメインキーでなければならない
テーブル・パーティションの追加
表パーティションの削除(パーティションを削除するとパーティション内のデータが削除されます)
テーブルの作成:
drop table if exists partition_test;CREATE TABLE `partition_test` (
`t_id` int(11) NOT NULL AUTO_INCREMENT,
`test_date` datetime NOT NULL,
`t_key` varchar(16),
`test_info` varchar(50) DEFAULT 'test',
PRIMARY KEY (`t_id`,`test_date`,`t_key`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
PARTITION BY RANGE COLUMNS (test_date,t_key)
(
PARTITION p201303151 VALUES LESS THAN ('2013-03-15','m2'),
PARTITION p201303152 VALUES LESS THAN ('2013-03-15','m3'),
PARTITION p201303161 VALUES LESS THAN ('2013-03-16','m2'),
PARTITION p201303162 VALUES LESS THAN ('2013-03-16','m3'),
PARTITION p201303171 VALUES LESS THAN ('2013-03-17','m2'),
PARTITION p201303172 VALUES LESS THAN ('2013-03-17','m3')
);
注意2点:1、5.5 COLUMNSパーティションを追加すると、時間変換関数は不要になります.2、パーティションフィールドはメインキーでなければならない
テーブル・パーティションの追加
alter table `partition_test` add PARTITION(PARTITION p201303181 VALUES LESS THAN ('2013-03-18','m2'));
表パーティションの削除(パーティションを削除するとパーティション内のデータが削除されます)
alter table `partition_test` DROP PARTITION p201303181;