ADMIN [SET|SHOW|UNSET] BDR ROLE

  • ADMIN SET BDR ROLE 可以设置该集群的 BDR role。现在 TiDB 集群可以设置 PRIMARYSECONDARY 两种 BDR role。关于 BDR role 的详细信息可参考 TiCDC 双向复制的 DDL 同步
  • ADMIN SHOW BDR ROLE 可以显示该集群的 BDR role。
  • ADMIN UNSET BDR ROLE 可以撤销之前设置的 BDR role。

ADMIN [SET|SHOW|UNSET] BDR ROLE - 图1

警告

双向复制的 DDL 同步目前为实验特性,不建议在生产环境中使用。该功能可能会在未事先通知的情况下发生变化或删除。如果发现 bug,请在 GitHub 上提 issue 反馈。

语法图

AdminShowBDRRoleStmt

ADMIN [SET|SHOW|UNSET] BDR ROLE - 图2

AdminSetBDRRoleStmt

ADMIN [SET|SHOW|UNSET] BDR ROLE - 图3

AdminUnsetBDRRoleStmt

ADMIN [SET|SHOW|UNSET] BDR ROLE - 图4

  1. AdminShowBDRRoleStmt ::=
  2. 'ADMIN' 'SHOW' 'BDR' 'ROLE'
  3. AdminSetBDRRoleStmt ::=
  4. 'ADMIN' 'SET' 'BDR' 'ROLE' ('PRIMARY' | 'SECONDARY')
  5. AdminUnsetBDRRoleStmt ::=
  6. 'ADMIN' 'UNSET' 'BDR' 'ROLE'

示例

TiDB 集群默认没有 BDR role。运行以下命令显示集群的 BDR 角色。

  1. ADMIN SHOW BDR ROLE;
  1. +----------+
  2. | BDR_ROLE |
  3. +----------+
  4. | |
  5. +----------+
  6. 1 row in set (0.01 sec)

执行以下命令可以将 BDR role 设置为 PRIMARY

  1. ADMIN SET BDR ROLE PRIMARY;
  1. Query OK, 0 rows affected (0.01 sec)
  1. ADMIN SHOW BDR ROLE;
  2. +----------+
  3. | BDR_ROLE |
  4. +----------+
  5. | primary |
  6. +----------+
  7. 1 row in set (0.00 sec)

撤销之前的设置。

  1. ADMIN UNSET BDR ROLE;
  1. Query OK, 0 rows affected (0.01 sec)
  1. ADMIN SHOW BDR ROLE;
  2. +----------+
  3. | BDR_ROLE |
  4. +----------+
  5. | |
  6. +----------+
  7. 1 row in set (0.01 sec)

MySQL 兼容性

ADMIN [SET|SHOW|UNSET] BDR ROLE 语句是 TiDB 对 MySQL 语法的扩展。