Skip to content

Commit

Permalink
*: address comments
Browse files Browse the repository at this point in the history
  • Loading branch information
zimulala committed May 18, 2023
1 parent d25e45a commit a086164
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 13 deletions.
2 changes: 1 addition & 1 deletion TOC.md
Original file line number Diff line number Diff line change
Expand Up @@ -125,9 +125,9 @@
- [与 Apache Kafka 和 Apache Flink 进行数据集成](/replicate-data-to-kafka.md)
- 运维操作
- 升级 TiDB 版本
- [平滑升级 TiDB](/upgrade-tidb.md)
- [使用 TiUP 升级](/upgrade-tidb-using-tiup.md)
- [使用 TiDB Operator](https://docs.pingcap.com/zh/tidb-in-kubernetes/stable/upgrade-a-tidb-cluster)
- [平滑升级 TiDB](/smooth-upgrade-tidb.md)
- [TiFlash v6.2 升级帮助](/tiflash-620-upgrade-guide.md)
- 扩缩容
- [使用 TiUP(推荐)](/scale-tidb-using-tiup.md)
Expand Down
4 changes: 2 additions & 2 deletions faq/upgrade-faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,11 @@ aliases: ['/docs-cn/dev/faq/upgrade-faq/','/docs-cn/dev/faq/upgrade/']

* 集群中有 DDL 语句正在被执行时(通常为 `ADD INDEX` 和列类型变更等耗时较久的 DDL 语句),**请勿进行**升级操作。在升级前,建议使用 [`ADMIN SHOW DDL`](/sql-statements/sql-statement-admin-show-ddl.md) 命令查看集群中是否有正在进行的 DDL Job。如需升级,请等待 DDL 执行完成或使用 [`ADMIN CANCEL DDL`](/sql-statements/sql-statement-admin-cancel-ddl.md) 命令取消该 DDL Job 后再进行升级。

* 另外,在升级 TiDB 集群的过程中,**请勿执行** DDL 语句,否则可能会出现行为未定义的问题。
* 在升级 TiDB 集群的过程中,**请勿执行** DDL 语句,否则可能会出现行为未定义的问题。

* 从 TiDB v7.1 版本升级至更高的版本时:

* 不用遵循限制低版本升级时的限制,即在升级时可以接收用户 DDL 任务。建议参考[平滑升级 TiDB](/upgrade-tidb.md)
* 不用遵循限制低版本升级时的限制,即在升级时可以接收用户 DDL 任务。建议参考[平滑升级 TiDB](/smooth-upgrade-tidb.md)

### Binary 如何升级?

Expand Down
24 changes: 15 additions & 9 deletions upgrade-tidb.md → smooth-upgrade-tidb.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,26 +5,34 @@ summary: 本文介绍支持无需手动取消 DDL 的平滑升级集群功能。

# 平滑升级 TiDB

此功能用于取消禁止用户 DDL 操作存在于升级过程的限制。本文档介绍了 TiDB 升级过程中对用户 DDL 操作的支持和约束情况。
> **注意**
>
> 平滑升级目前为实验特性
此功能具体放开的两个限制如下(可以参考[使用 TiUP 升级 TiDB](/upgrade-tidb-using-tiup.md#使用-tiup-升级-tidb)中警告部分):

1. 在升级过程中,请勿执行 DDL 操作,否则可能会出现行为未定义的问题;
2. 集群中有 DDL 语句正在被执行时(通常为 ADD INDEX 和列类型变更等耗时较久的 DDL 语句),请勿进行升级操作。
本文档介绍 TiDB 的平滑升级集群功能,支持无需手动取消 DDL 的操作。平滑升级功能自 TiDB v7.1.0 引入,取消了升级过程中的限制,提供更平滑的升级体验。

## 功能简介

在 TiDB 升级过程中会先暂停用户 DDL 操作,然后执行升级过程中的系统 DDL 操作,再恢复原先的 DDL 操作,最后完整升级。其中恢复的用户 DDL job 还是按升级前的顺序执行。此外,整个升级过程无需用户干预。
TiDB 引入平滑升级功能前,对于升级过程中的 DDL 操作有如下限制(可以参考[使用 TiUP 升级 TiDB](/upgrade-tidb-using-tiup.md#使用-tiup-升级-tidb)中警告部分):

1. 在升级过程中,请勿执行 DDL 操作,否则可能会出现行为未定义的问题。
2. 集群中有 DDL 语句正在被执行时(通常为 `ADD INDEX` 和列类型变更等耗时较久的 DDL 语句),请勿进行升级操作。

开启平滑升级后,TiDB 升级过程不再受上述限制。

升级过程中,TiDB 会自动暂停用户的 DDL 操作,然后执行升级过程中的系统 DDL 操作,再恢复原先的 DDL 操作,最后完整升级。其中恢复的用户 DDL job 还是按升级前的顺序执行。此外,整个升级过程无需用户干预。

## 使用限制

使用平滑升级功能时,需要注意以下限制。

### 用户操作限制

* 在升级前,有正在处理的 canceling DDL job (即有正在被处理的 DDL job 被用户取消了)时,升级会直接报错(因为 canceling 状态的 job 不能被 `pause`)并退出升级。

* 在升级过程中,不允许以下操作:

* 禁止对系统表(mysql.*information_schema.*performance_schema.*metrics_schema.*)进行 DDL 操作。
* 对系统表(`mysql.*``information_schema.*``performance_schema.*``metrics_schema.*`)进行 DDL 操作。

* `ADMIN CANCEL/PAUSE/RESUME DDL JOBS job_id [, job_id] ...;`

Expand All @@ -38,6 +46,4 @@ summary: 本文介绍支持无需手动取消 DDL 的平滑升级集群功能。

## 支持版本

此功能从 v7.1.0 版本开始引入,且当前为实验特性。

此功能支持版本:从 TiDB v7.1 版本升级至更高的版本。
2 changes: 1 addition & 1 deletion upgrade-tidb-using-tiup.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ aliases: ['/docs-cn/dev/upgrade-tidb-using-tiup/','/docs-cn/dev/how-to/upgrade/u
> 2. 在升级 TiDB 集群的过程中,**请勿执行** DDL 语句,否则可能会出现行为未定义的问题。
> 3. 集群中有 DDL 语句正在被执行时(通常为 `ADD INDEX` 和列类型变更等耗时较久的 DDL 语句),**请勿进行**升级操作。在升级前,建议使用 [`ADMIN SHOW DDL`](/sql-statements/sql-statement-admin-show-ddl.md) 命令查看集群中是否有正在进行的 DDL Job。如需升级,请等待 DDL 执行完成或使用 [`ADMIN CANCEL DDL`](/sql-statements/sql-statement-admin-cancel-ddl.md) 命令取消该 DDL Job 后再进行升级。
>
> 从 TiDB v7.1 版本升级至更高的版本时,可以不遵循上面的限制 12,建议参考[平滑升级 TiDB 的限制](/upgrade-tidb.md#使用限制)
> 从 TiDB v7.1 版本升级至更高的版本时,可以不遵循上面的限制 23,建议参考[平滑升级 TiDB 的限制](/smooth-upgrade-tidb.md#使用限制)
> **注意:**
>
Expand Down

0 comments on commit a086164

Please sign in to comment.