凡科 360免费建站,首页html模板,太原网站建设的公司,发布网站需要备案主备库的 SwitchOver 和 FailOver 概念
租户有主租户和备租户的概念#xff0c;主租户位于主库#xff0c;备租户位于备库。 SwitchOver 操作是在用户计划内对租户角色进行变更。当用户主动切换主备库角色时#xff0c;称为 SwitchOver#xff0c;RPO0#xff0c;耗时秒级…主备库的 SwitchOver 和 FailOver 概念
租户有主租户和备租户的概念主租户位于主库备租户位于备库。 SwitchOver 操作是在用户计划内对租户角色进行变更。当用户主动切换主备库角色时称为 SwitchOverRPO0耗时秒级。
FailOver 操作通常是在主租户出现无法恢复的故障时所做的切换行为。当主库故障时切换到备库称为FailOverRPO一般为毫秒耗时秒级。简单说来SwitchOver不丢数据FailOver 会丢一点数据。
由于 OceanBase 数据库的每个租户均有多个日志流而 Failover 操作需要在操作执行完成后达到数据一致的状态故系统会选择所有日志流的同步位点中 SCN 最小的值作为 Failover 的执行位点。执行Failover 操作后租户下的所有日志流都会统一回退到该位点。 参考https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000033895 FailOver 操作
在主租户不可用情况下可以执行 FAILOVER 命令将备租户切换成主租户。 执行 FAILOVER 后备租户所有日志流的数据回滚到一致性位点然后切换为主租户。
ALTER SYSTEM ACTIVATE STANDBY [TENANT tenant_name]FailOver 操作完成后查询内部表看是否切换成功
SELECT TENANT_NAME, TENANT_TYPE, TENANT_ROLE, SWITCHOVER_STATUS FROM oceanbase.DBA_OB_TENANTS;
--------------------------------------------------------------
| TENANT_NAME | TENANT_TYPE | TENANT_ROLE | SWITCHOVER_STATUS |
--------------------------------------------------------------
| standby_tenant | USER | PRIMARY | NORMAL |
--------------------------------------------------------------
1 row in set根据查询结果备租户的 TENANT_ROLE 变为 PRIMARY且 SWITCHOVER_STATUS 为 NORMAL则表示备租户切主成功。
SwitchOver操作
租户主备角色切换命令可以将主租户无损切换为备租户备租户切换成主租户。
ALTER SYSTEM SWITCHOVER TO STANDBY [TENANT tenant_name]
ALTER SYSTEM SWITCHOVER TO PRIMARY [TENANT tenant_name]