Dieser Artikel bietet Ihnen eine Einführung in die beiden Möglichkeiten zum Erstellen von Partitionen in MySQL. Ich hoffe, dass er Ihnen als Referenz dienen wird.
#list partition – der Schlüsselwert wird in die Partition geschrieben, die durch eine benutzerdefinierte Liste bestimmt wird.
Vorteile: Unterstützt int, time, varchar und andere Werte
Nachteile: Sie müssen den Slave der entsprechenden Daten selbst schreiben (welche Partition geschrieben oder abgefragt wird), d. h. Wenn die Partitionsbedingungen später geändert werden, muss sie erneut konfiguriert werden.
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-Partition – nachdem der Schlüsselwert durch den Hash-Algorithmus berechnet wurde, wird er automatisch in die entsprechende Partition geschrieben.
Vorteile: Sie müssen die entsprechenden Daten nicht selbst schreiben (welche Partition geschrieben oder abgefragt werden soll)
Nachteile: Unterstützt nur den Ganzzahltyp 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个分区中的某个分区中
Das obige ist der detaillierte Inhalt vonEinführung in zwei Möglichkeiten zum Erstellen von Partitionen in MySQL (Codebeispiele). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!