ADMIN [SET|SHOW|UNSET] BDR ROLE

  • ADMIN SET BDR ROLE 可以设置该集群的 BDR role。现在 TiDB 集群可以设置 PRIMARY、SECONDARY 两种 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'

4. AdminSetBDRRoleStmt ::=
5. 'ADMIN' 'SET' 'BDR' 'ROLE' ('PRIMARY' | 'SECONDARY')

7. AdminUnsetBDRRoleStmt ::=
8. '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 语法的扩展。