mysql在已有无分区表增加分区
mysql在已有无分区表增加分区,mysql5.5才有,可以是innodbfileper_table关闭状态。
from: http://docs.oracle.com/cd/E17952_01/refman-5.5-en/alter-table-partition-operations.html
mysql5.1的时候新增的partition,解决了比较简单的sharding的策略
mysql在已有表增加partition,mysql5.5才有,可以是innodb_file_per_table关闭状态.
##初始表
CREATE TABLE IF NOT EXISTS `ccc` (
`a` int(11) NOT NULL AUTO_INCREMENT,
`b` int(11) NOT NULL,
PRIMARY KEY (`a`)
) ENGINE=InnoDB;
#更改表为partition
ALTER TABLE ccc
PARTITION BY RANGE(a)(
PARTITION p0 VALUES LESS THAN (2),
PARTITION p1 VALUES LESS THAN (10)
);
#添加分区
ALTER TABLE ccc
ADD PARTITION (
PARTITION p2 VALUES LESS THAN (20)
)
#添加分区
ALTER TABLE ccc
ADD PARTITION (
PARTITION p3 VALUES LESS THAN (30)
)
#添加分区只能按value增加,所以不要使用
# PARTITION pz VALUES LESS THAN MAXVALUE