DDL 语句的执行流程问题

1、DDL语句不可以在 TiDB 中并行执行。
2、同一时刻,只有一个 TiDB Server 可以执行 DDL 语句
想请教一下,上述两句话,那个是正确的,那个是错误的?

对于上述两句话:

  1. DDL语句不可以在 TiDB 中并行执行。 这句话是错误的。在 TiDB 中,多个 DDL 语句是可以并行执行的。TiDB 支持并发执行多个 DDL 语句,可以提高系统的处理能力和效率。在执行并行的 DDL 语句时,TiDB 会根据优先级和资源情况进行调度和执行。
  2. 同一时刻,只有一个 TiDB Server 可以执行 DDL 语句。 这句话是正确的。在 TiDB 的架构中,每个 TiDB Server 实例是独立运行的,每个实例都可以执行 DDL 语句。但在一个 TiDB 集群中,同一时刻只有一个 TiDB Server 负责协调和执行 DDL 语句。这是为了确保 DDL 操作的正确性和一致性,避免多个 TiDB Server 之间的竞争和冲突。

总结起来,多个 DDL 语句可以在 TiDB 中并行执行,但同一时刻只有一个 TiDB Server 负责执行和协调 DDL 语句的执行顺序和结果。

谢谢老师的指导!

客气客气

1错2对 可同时执行 add index 和 其他ddl语句
81241151-B672-4059-931A-2915495B6FD4

第二个正确

第二个是正确的

第二个是对的,第一个错

的确是2错了,

DDL语句不可以在 TiDB 中并行执行。这个是对的。
同一时刻,只有一个 TiDB Server 可以执行 DDL 语句 也是对的。
302课程的习题 原文是 “可以”


这个是 TiDB 高级系统管理 [TiDB v5](302)Lesson 05:TiDB 数据库 SQL 执行流程章节的课堂小测验

同一时刻只有一个身为owner的Tidb server处理DDL操作,但是index queue中的索引DDL和job queue中的job是可以被owner并行执行的。课件有

DDL语句不可以在 TiDB 中并行执行。
同一时刻只有一个 TiDB Server 可以执行 DDL 语句。