欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

十五、mysql 分区之 分区管理_MySQL

程序员文章站 2022-06-12 17:44:52
...
1.mysql分区处理分区字段NULL值的方式    1.range分区null被当作最小值处理    2.list分区null值必须被枚举出来,否则将出错    3.hash/key分区 null值当作0处理2.RANGE && LIST 分区管理    1.删除分区        alter table emp drop partition p0; //删除emp的p0分区,注意也会同时删除该分区的数据    2.增加分区        alter table emp add partition (partition p5 values less than(5000));        //不能增加已存在分区名的分区        //range分区不能添加比目前最大分区的最大值小的分区,例如目前p4分区最大值为6000,那么p5添加成5000就会报错的        //list分区不能添加已经在其他分区有枚举数据的分区,例如p4包含了'PHP'这个,那么P5就不能再包含'PHP'了    3.重定义分区(range)        alter table  emp reorganize partition p5 into (            partition p5 values less than (3000),            partition p6 values less than (4000),            partition p7 values less than (5000)        );        //原本p5分区的最大值为5000,现在将p5拆分成p5,p6,p7 各存放一千        //拆分分区只能拆成相邻,不能是p5,6,8...        //拆分分区不能改变原本分区的模式,比如range不能拆成list    4.重定义分区(list)        alter table emp reorganize partition p4,p5,p6 into {            partition p4 values in (1,2,3,4,5,6,7,8,9,10)        );        //比如之前的p4p5p6包含了1234567810这10个数字,那么现在全部归纳到p4中来        //list不支持range的分区功能,但可以通过拆分跟添加来实现重分区3.HASH && KEY 增加分区    alter table emp coalesce partition 3; 给emp表删除2个分区 //注意会删除数据    alter table emp add partition partitions 8 ;//增加8个分区