这篇文章给大家分享的是有关MySQL如何建立分区的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、成都做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的山东网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
#list分区--键值通过自定义的list来确定写入到哪个分区中。
优势:支持int,时间,varchar等值
劣势:需要自己写相应数据的从属(写入或者查询到哪个分区),即后期若分区条件修改需要再配置。
CREATE TABLE t_test ( unid INT auto_increment , uuid VARCHAR(36), cdate datetime, type int, text varchar(30), PRIMARY KEY(unid,type) ) PARTITION BY LIST COLUMNS(type) ( #这里以type字段来分区,list分区中,这个字段可以为int整形或者某个值 PARTITION pRegion_1 VALUES IN (1), #这里的意思是,当type=1时,数据会写入到pRegion_1分区中 PARTITION pRegion_2 VALUES IN (2), #同上 PARTITION pRegion_3 VALUES IN (3), PARTITION pRegion_4 VALUES IN (4) );
#hash分区--键值通过hash算法计算后,自动写入到相应的分区中 。
优势:不需要自己写相应数据的从属(写入或者查询到哪个分区)
劣势:只支持int整型
CREATE TABLE t_test ( unid INT auto_increment , uuid VARCHAR(36), cdate datetime, type int, text varchar(30), PRIMARY KEY(unid,type) #复合主键,因为后面要用type字段来分区 ) PARTITION BY HASH ( type ) #这里以type字段来分区,type必须是主键或者是复合主键包含的字段,hash分区的方式必须该字段为int PARTITIONS 10; #这里设定的是分区数为10,数据会通过type字段经过hash算法后,自动归属到10个分区中的某个分区中
感谢各位的阅读!关于mysql如何建立分区就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!