PingKai Logo下载

ADMIN ACTIVATE STANDBY

ADMIN ACTIVATE STANDBY 用于在计划外切换(Failover)场景下将 standby 集群激活为 primary。支持两种模式:FLASHBACK(回退到一致性快照点)和 FORCE_COMMIT(强制提交已接收数据)。

该语句必须在当前 standby 集群上执行。

所需权限

执行该语句需要 SUPER 权限。

语法图

ADMIN ACTIVATE STANDBY MODE = FLASHBACK | FORCE_COMMIT;

参数说明

参数说明
FLASHBACKstandby 的数据回退到一个一致性快照点后激活为 primary。适用于异步复制场景,或同步复制场景但无法确认原 primary 状态
FORCE_COMMIT强制提交 standby 已接收的所有数据后激活为 primary。仅限同步复制场景,可确保 RPO = 0

使用 FORCE_COMMIT 前必须满足以下条件:

  • 当前复制为同步复制(MAXIMUM_PROTECTIONMAXIMUM_AVAILABILITY
  • primary 尚未执行 ADMIN DROP LOG REPLICATION
  • 已确认原 primary 已彻底停机或网络隔离

若已在原 primary 上执行过 ADMIN DROP LOG REPLICATION,只能使用 FLASHBACK

示例

使用 FLASHBACK 模式激活:

ADMIN ACTIVATE STANDBY MODE = FLASHBACK;

使用 FORCE_COMMIT 模式激活:

ADMIN ACTIVATE STANDBY MODE = FORCE_COMMIT;

MySQL 兼容性

ADMIN ACTIVATE STANDBY 语句是 TiDB 对 MySQL 语法的扩展。

另请参阅