---
title: "Failover - OceanBase 数据库 V4.3.2 | OceanBase 文档中心"
description: Failover 当主租户不可用时，可以将备租户切换为主租户继续提供服务。 使用限制 执行 Failover 时，要求备租户所有日志流的副本均在线，否则需要等待对应的副本永久下线。 备租户或备租户所在集群的 sys 租户可以分别通过 DBA_OB_LS 视图或 CDB_OB_LS 视图查询所有日志流副本是否在线，有关…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.3.2

# Failover

更新时间：2024-09-11 23:00:00

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.3.2/zh-CN/600.manage/400.high-availability/300.physical-standby-database-disaster-recovery/600.role-switch/300.perform-failover.md)  

当主租户不可用时，可以将备租户切换为主租户继续提供服务。

## 使用限制

- 执行 Failover 时，要求备租户所有日志流的副本均在线，否则需要等待对应的副本永久下线。

  备租户或备租户所在集群的`sys` 租户可以分别通过 `DBA_OB_LS` 视图或 `CDB_OB_LS` 视图查询所有日志流副本是否在线，有关日志流副本的详细说明信息，请参见 [副本介绍](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001049924)。
 - 执行 Failover 时，不会检查对应主租户的状态，因此除主租户故障的容灾需求外，Failover 操作也可以用于独立的一个主租户在某一个时间点的快照并用于后续业务验证的需求场景。

## 背景信息

Failover 操作只会对日志文件做修改，不会对数据文件做修改。

由于 OceanBase 数据库的每个租户均有多个日志流，而 Failover 操作需要在操作执行完成后达到数据一致的状态，故系统会选择所有日志流的同步位点中 SCN 最小的值作为 Failover 的执行位点。执行Failover 操作后，租户下的所有日志流都会统一回退到该位点。

## 操作步骤

1. 使用管理员用户登录备租户或备租户所在集群的 `sys` 租户。
 2. 执行 Failover 命令，将备租户切换为主租户。

      - 备租户所在集群的 `sys` 租户将备租户切换为主租户

       ```sql
       ALTER SYSTEM ACTIVATE STANDBY TENANT = tenant_name;

       ```
      - 备租户将本租户切换为主租户

       ```sql
       ALTER SYSTEM ACTIVATE STANDBY;

       ```
 3. 查询 `DBA_OB_TENANTS` 视图，确认备租户是否已切换为主租户。

      - 备租户所在集群的 `sys` 租户查询视图

       ```sql
       SELECT TENANT_NAME, TENANT_TYPE, TENANT_ROLE, SWITCHOVER_STATUS FROM oceanbase.DBA_OB_TENANTS;

       ```
      - 备租户查询视图

       MySQL 模式：

       ```

       Oracle 模式：

       ```sql
       SELECT TENANT_NAME, TENANT_TYPE, TENANT_ROLE, SWITCHOVER_STATUS FROM SYS.DBA_OB_TENANTS;

       ```

   查询结果的示例如下：

   ```shell
   +-----------------+-------------+-------------+-------------------+
   | TENANT_NAME     | TENANT_TYPE | TENANT_ROLE | SWITCHOVER_STATUS |
   +-----------------+-------------+-------------+-------------------+
   | standby_tenant  | USER        | PRIMARY     | NORMAL            |
   +-----------------+-------------+-------------+-------------------+
   1 row in set

   ```

   根据查询结果，备租户的 `TENANT_ROLE` 变为 `PRIMARY`，且 `SWITCHOVER_STATUS` 为 `NORMAL`，则表示备租户切主成功。

## Failover 后的注意事项

由于 Failover 操作会将所有日志流已同步的数据恢复到一致性位点，保证该位点之前的所有日志流的数据是完整的。故执行 Failover 操作后：

- 不支持原主租户降备后接入成为新主租户的备租户。
 - 对于第三方备租户，取决于备租户同步的日志，如果同步的日志超过一致性位点，则不支持接入作为新主租户的备租户。为了便于管理，不建议第三方备租户接入作为新主租户的备租户。

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
