1. Test add partition and delete Partition # # #添加删除range分区 (1) Create a partition:create table titles ( emp_no INT NOT NULL, title varchar ( not null, from_date) date not null, to_date DATE, KEY (emp_no), primary key (emp_no,title , from_date)) partition by range columns (from_date) (partition p01 values less than (' 1985-12-31 '),partition p02 values less than (' 1990-12-31 ') ),partition p03 values less than (' 1995-12-31 '),partition p04 values less than (' 2000-12-,partition p05 values less than (' 2005-12-31 '), partition p06 values less than (' 2010-12-31 '),partition p07 values less than (' 2015-12-31 ') ),partition p08 values less than (' 2020-12-31 '),partition p09 values less than (' 2025-12-31 '),partition p10 values less than (' 2030-12-31 ')); Import Data Mysql> source titles.sql (2) Add partition: Note: cannot exceed p04 range, strictly increment each partition, i.e. minimum cannot be less than the previous partition under the new two partitions N01 and n02 Alter table titles reorganize partition p04 into ( partition n01 Values less than (' 1997-12-31 '), partition n02 values less than (' 1998-12-31 ') ), partition p04 values less than (' 2000-12-31 ') );(3) Delete partition: Delete partition deletes data. Mysql> select count (*) from titles where from_date< ' 1985-12-31 '; +--------- -+| count (*) |+----------+| 18238 |+----------+1 row in set (0.09 sec) mysql> alter table titles drop partition p01; query ok, 0 rows affected (0.05 sec) records: 0 duplicates: 0 warnings: 0mysql> select count (*) from titles where from_ date< ' 1985-12-31 '; +----------+| count (*) |+----------+| 0 |+----------+1 row in set (0.04 sec) # # #添加删除list分区 (1) Create a list partition create table titles ( emp_no INT NOT Null, title varchar ( ) NOT NULL, from_date DATE NOT NULL, to_date DATE, KEY (emp_no), primary key (Emp_no,title, from_date)) partition by list columns (title) (Partition p0 values in (' Assistant engineer '),partition p1 values in (' Engineer '), PARTITION&NBSP;P2 values in (' Manager '),partition p3 values in (' Senior engineer '), partition p4 values in (' Senior staff '),partition p5 values in (' Staff '),partition p6 values in (' Technique leader ')); Import Data titles.sql Is the data exported from the Employees Database Mysql> source titles.sql (2) Add partition Mysql> alter table titles add partition (Partition p7 values in (' CEO ')); query ok, 0 rows affected (0.07 sec) Records: 0&nbsP; duplicates: 0 warnings: 0 (3) Delete partition: Mysql> alter table titles drop partition p0; query ok, 0 rows affected (0.04 sec) records: 0 duplicates: 0 warnings: 0## #添加删除hash分区 (1) Create a hash partition create table titles ( emp_no INT NOT NULL, title varchar ( NOT NULL, ) from_date DATE Not null, to_date date, key (emp_no), primary key ( emp_no,title, from_date)) partition by hash (emp_no) partitions 4; Import data:mysql> source titles.sql (2) Delete hash partition 4 partitions reduced to two,4-2=2mysql> alter table titles coalesce partition 2; query ok, 443308 rows affected (12.41 sec) records: 443308 Duplicates: 0 warnings: 0 (3) Add a hash partition to 5,2+3=5mysql> alter table titles add partition partitions 3; query ok, 443308 rows affected (11.54 sec) records: 443308 duplicates: 0 warnings: 0## #添加删除key分区 (1) Create a key partition create table titles ( emp_no INT NOT NULL, Title varchar ( NOT NULL, ) from_date DATE not null, to_date date, key ( Emp_no), primary key (emp_no,title, from_date)) partition by key (emp_no) partitions 4; Import Data mysql> source titles.sql (2) Delete partition, same as Hashmysql> alter table titles coalesce partition 2; query ok, 443308 rows affected (7.86 sec) records: 443308 Duplicates: 0 warnings: 0 (3) Add partition, same as hashmysql> alter table titles add partition partitions 3; query ok, 443308 rows affected (6.17 sec) records: 443308 Duplicates: 0 warnings: 0
Create, add, and delete MySQL table partitions