mysql在已有无分区表增加分区

Posted 走近Java

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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


以上是关于mysql在已有无分区表增加分区的主要内容,如果未能解决你的问题,请参考以下文章

创建,增加,删除mysql表分区

MySQL每天自动增加分区

MySQL5.5 RANGE分区增加删除处理

十、MySQL表分区

mysql 分区PARTITIONS之基本使用

mysql表分区使用及详细介绍