From 06bb3566c6bc9de4565da5f235c78cff35629843 Mon Sep 17 00:00:00 2001 From: Xiaozhen Liu <liuxiaozhen@pingcap.com> Date: Wed, 11 Aug 2021 10:13:23 +0800 Subject: [PATCH 1/3] partitioning: Corrected partition management --- partitioned-table.md | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/partitioned-table.md b/partitioned-table.md index ea6d862e50a4..dda8d0bdcaec 100644 --- a/partitioned-table.md +++ b/partitioned-table.md @@ -572,7 +572,21 @@ Empty set (0.00 sec) ## 分区管理 -通过 `ALTER TABLE` 语句可以执行一些添加、删除、合并、切分、重定义分区的操作。 +对于 `LIST` 和 `RANGE` 分区表,通过 `ALTER TABLE <表名> ADD PARTITION (<分区说明>)` 或 `ALTER TABLE <表名> DROP PARTITION <分区列>` 语句,可以执行添加和删除分区的操作。 + +对于 `LIST` 和 `RANGE` 分区表,暂不支持 `REORGANIZE PARTITION` 语句。 + +对于 `HASH` 分区表,暂不支持 `COALESCE PARTITION` 和 `ADD PARTITION` 语句。 + +`EXCHANGE PARTITION` 语句用来交换分区和非分区表,类似于重命名表如 `RENAME TABLE t1 TO t1_tmp, t2 TO t1, t1_tmp TO t2` 的操作。 + +例如,`ALTER TABLE partitioned_table EXCHANGE PARTITION p1 WITH TABLE non_partitioned_table` 交换的是 `p1` 分区的 `non_partitioned_table` 表和 `partitioned_table` 表。 + +确保要交换分区中的所有行与分区定义匹配;否则,你将无法找到这些行,并导致意外情况出现。 + +> **警告:** +> +> `EXCHANGE PARTITION` 是实验性功能,不建议在生产环境中使用。要启用 `EXCHANGE PARTITION`,将系统变量 `tidb_enable_exchange_partition` 设置为 `ON`。 ### Range 分区管理 From 2e8c0b6d8483fc6ad8b33ea3a3876da7626d6841 Mon Sep 17 00:00:00 2001 From: Liuxiaozhen12 <82579298+Liuxiaozhen12@users.noreply.github.com> Date: Fri, 27 Aug 2021 13:09:15 +0800 Subject: [PATCH 2/3] Update partitioned-table.md --- partitioned-table.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/partitioned-table.md b/partitioned-table.md index dda8d0bdcaec..6f3f312cbed0 100644 --- a/partitioned-table.md +++ b/partitioned-table.md @@ -586,7 +586,7 @@ Empty set (0.00 sec) > **警告:** > -> `EXCHANGE PARTITION` 是实验性功能,不建议在生产环境中使用。要启用 `EXCHANGE PARTITION`,将系统变量 `tidb_enable_exchange_partition` 设置为 `ON`。 +> `EXCHANGE PARTITION` 是实验性功能,不建议在生产环境中使用。要启用 `EXCHANGE PARTITION`,将系统变量 `tidb_enable_exchange_partition` 设置为 `ON`。 ### Range 分区管理 From 38cd03c2675725caf956ec7effc65214c66d58b2 Mon Sep 17 00:00:00 2001 From: Liuxiaozhen12 <82579298+Liuxiaozhen12@users.noreply.github.com> Date: Fri, 3 Sep 2021 10:51:10 +0800 Subject: [PATCH 3/3] Apply suggestions from code review Co-authored-by: TomShawn <41534398+TomShawn@users.noreply.github.com> --- partitioned-table.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/partitioned-table.md b/partitioned-table.md index 6f3f312cbed0..4b220e11f496 100644 --- a/partitioned-table.md +++ b/partitioned-table.md @@ -572,7 +572,7 @@ Empty set (0.00 sec) ## 分区管理 -对于 `LIST` 和 `RANGE` 分区表,通过 `ALTER TABLE <表名> ADD PARTITION (<分区说明>)` 或 `ALTER TABLE <表名> DROP PARTITION <分区列>` 语句,可以执行添加和删除分区的操作。 +对于 `LIST` 和 `RANGE` 分区表,通过 `ALTER TABLE <表名> ADD PARTITION (<分区说明>)` 或 `ALTER TABLE <表名> DROP PARTITION <分区列表>` 语句,可以执行添加和删除分区的操作。 对于 `LIST` 和 `RANGE` 分区表,暂不支持 `REORGANIZE PARTITION` 语句。 @@ -582,7 +582,7 @@ Empty set (0.00 sec) 例如,`ALTER TABLE partitioned_table EXCHANGE PARTITION p1 WITH TABLE non_partitioned_table` 交换的是 `p1` 分区的 `non_partitioned_table` 表和 `partitioned_table` 表。 -确保要交换分区中的所有行与分区定义匹配;否则,你将无法找到这些行,并导致意外情况出现。 +确保要交换入分区中的所有行与分区定义匹配;否则,你将无法找到这些行,并导致意外情况出现。 > **警告:** >