千家信息网

mysql如何建立分区

发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,这篇文章给大家分享的是有关mysql如何建立分区的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。#list分区--键值通过自定义的list来确定写入到哪个分区中。优势:支持i
千家信息网最后更新 2025年01月22日mysql如何建立分区

这篇文章给大家分享的是有关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分区的方式必须该字段为intPARTITIONS 10;              #这里设定的是分区数为10,数据会通过type字段经过hash算法后,自动归属到10个分区中的某个分区中

感谢各位的阅读!关于mysql如何建立分区就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!

0