mysql 分区
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了mysql 分区,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2297字,纯文字阅读大概需要4分钟。
内容图文
重建主键,并分区
ALTER TABLE `tb_pub_app_income` MODIFY COLUMN `end_date` datetimeNOTNULL COMMENT ‘结束日期‘ AFTER `start_date`, DROPPRIMARYKEY, ADDPRIMARYKEY (`id`, `end_date`); altertable tb_pub_app_income PARTITION BY RANGE COLUMNS(end_date)( PARTITION p0 VALUES LESS THAN (‘2017-4-1‘) , PARTITION p201704 VALUES LESS THAN (‘2017-5-1‘) , PARTITION p201705 VALUES LESS THAN (‘2017-6-1‘) , PARTITION p201706 VALUES LESS THAN (‘2017-7-1‘) , PARTITION p201707 VALUES LESS THAN (‘2017-8-1‘) , PARTITION p201708 VALUES LESS THAN (‘2017-9-1‘) , PARTITION p201709 VALUES LESS THAN (‘2017-10-1‘) , PARTITION p201710 VALUES LESS THAN (‘2017-11-1‘) , PARTITION p201711 VALUES LESS THAN (‘2017-12-1‘) , PARTITION p201712 VALUES LESS THAN (‘2018-1-1‘) );
追加分区
alter table tb_pub_app_income add PARTITION( PARTITION p201801 VALUES LESS THAN (‘2018-2-1‘) );
追加分区时报 VALUES LESS THAN value must be strictly increasing for each partition 错的原因是 最后分区太大了 ,将对应分区删除即可
/* !50500 PARTITION BY RANGE COLUMNS(end_date) (PARTITION p0 VALUES LESS THAN (‘2016-10-1‘) ENGINE = InnoDB, PARTITION p201610 VALUES LESS THAN (‘2016-11-1‘) ENGINE = InnoDB, PARTITION p201611 VALUES LESS THAN (‘2016-12-1‘) ENGINE = InnoDB, PARTITION p201612 VALUES LESS THAN (‘2017-1-1‘) ENGINE = InnoDB, PARTITION p201701 VALUES LESS THAN (‘2017-2-1‘) ENGINE = InnoDB, PARTITION p201702 VALUES LESS THAN (‘2017-3-1‘) ENGINE = InnoDB, PARTITION p201703 VALUES LESS THAN (‘2017-4-1‘) ENGINE = InnoDB, PARTITION p201704 VALUES LESS THAN (‘2017-5-1‘) ENGINE = InnoDB, PARTITION p201705 VALUES LESS THAN (‘2017-6-1‘) ENGINE = InnoDB, PARTITION p201706 VALUES LESS THAN (‘2017-7-1‘) ENGINE = InnoDB, PARTITION p201707 VALUES LESS THAN (‘2017-8-1‘) ENGINE = InnoDB, PARTITION p201708 VALUES LESS THAN (‘2017-9-1‘) ENGINE = InnoDB, PARTITION p201709 VALUES LESS THAN (‘2017-10-1‘) ENGINE = InnoDB, PARTITION p201710 VALUES LESS THAN (‘2017-11-1‘) ENGINE = InnoDB, PARTITION p201711 VALUES LESS THAN (‘2017-12-1‘) ENGINE = InnoDB, PARTITION p201712 VALUES LESS THAN (‘2018-1-1‘) ENGINE = InnoDB, PARTITION p1 VALUES LESS THAN (MAXVALUE) ENGINE = InnoDB) */;
删除分区
alter table tb_pub_app_income drop PARTITION p1;
参考资料:
1、http://blog.csdn.net/tjcyjd/article/details/11194489
2、 http://bbs.csdn.net/topics/390121058
原文:http://www.cnblogs.com/xunux/p/6723593.html
内容总结
以上是互联网集市为您收集整理的mysql 分区全部内容,希望文章能够帮你解决mysql 分区所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。