Maison  >  Article  >  base de données  >  Introduction à deux façons de créer des partitions dans MySQL (exemples de code)

Introduction à deux façons de créer des partitions dans MySQL (exemples de code)

不言
不言avant
2019-02-15 14:43:003616parcourir

Ce que cet article vous apporte est une introduction aux deux façons de créer des partitions dans MySQL (exemples de code). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Partition #list - la valeur de la clé est écrite sur quelle partition est déterminée par une liste personnalisée.

Avantages : prend en charge int, time, varchar et d'autres valeurs

Inconvénients : vous devez écrire vous-même l'esclave des données correspondantes (quelle partition est écrite ou interrogée), c'est-à-dire si les conditions de la partition sont modifiées ultérieurement, elle doit être à nouveau configurée.

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)
);

Partition #hash - une fois la valeur de la clé calculée via l'algorithme de hachage, elle est automatiquement écrite sur la partition correspondante.

Avantages : vous n'avez pas besoin d'écrire vous-même l'esclave de données correspondant (quelle partition écrire ou interroger)

Inconvénients : ne prend en charge que le type entier 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个分区中的某个分区中

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer