---
title: "缩减 OceanBase 集群及租户的高可用 - 云平台 OCP V4.3.1 | OceanBase 文档中心"
description: 缩减 OceanBase 集群及租户的高可用 本节为您介绍如何通过 OCP 缩减 OceanBase 集群及租户的高可用能力。 应用场景 缩减租户副本，减小集群规模，例如 3 地 5 中心 部署模式缩容为 2 地 3 中心 部署模式。 业务迁移机房，需要先添加新 Zone，再删除旧 Zone。 前提条件 删除租户副本…
---
切换语言

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

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*lJTmRZ61jSUAAAAAAAAAAAAADiGDAQ/original) 云平台 OCPV 4.3.1

# 缩减 OceanBase 集群及租户的高可用

更新时间：2026-04-14 15:11:01

[编辑](https://github.com/oceanbase/ocp-doc/edit/V4.3.1/zh-CN/1850.ocp-om-best-practices/400.reduce-the-high-availability-of-ob-clusters-and-tenants.md)  

本节为您介绍如何通过 OCP 缩减 OceanBase 集群及租户的高可用能力。

## 应用场景

- 缩减租户副本，减小集群规模，例如 **3 地 5 中心** 部署模式缩容为 **2 地 3 中心** 部署模式。
 - 业务迁移机房，需要先添加新 Zone，再删除旧 Zone。

## 前提条件

- 删除租户副本前，OceanBase 集群、租户必须为 **运行中** 状态。
 - 删除租户副本前，必须保证租户剩余副本满足多数派，即 F/L 副本的数量大于删除前 F/L 副本总数的一半。
 - OceanBase 集群删除 Zone 前，集群必须处于 **运行中** 状态。
 - 删除 Zone 前，需要保证 Zone 上已无租户副本。

## 注意事项

- 仲裁服务要求租户必须为 2F/4F 模式，如果租户开启了仲裁服务，此时只能从 4F 缩减为 2F。
 - 建议在删除副本前主动将主副本切走（即修改租户的 Primary Zone），确保副本删除时不影响业务。

## 操作步骤

操作详情请参见 [删除 Zone](https://www.oceanbase.com/docs/common-ocp-1000000001127062)、[删除 Zone 中的租户副本](https://www.oceanbase.com/docs/common-ocp-1000000001126916)。

删除租户副本是异步任务，触发任务后由 RS 后台调度逐步完成，如果数据量较大，数据删除需要较长时间。建议参考如下命令定期检查数据删除状态：

```SQL
# 检查 RS 历史任务记录，出现 tenant_balance_finished 说明数据删除已完成
# OceanBase V3.x 版本
select * from __all_rootservice_event_history order by gmt_create desc limit 10;
# OceanBase V4.x 版本
select * from DBA_OB_ROOTSERVICE_EVENT_HISTORY order by timestamp desc limit 10;

# 检查 server 状态，start 要晚于 offline 时间，状态为 active
# OceanBase V3.x 版本
select svr_ip, gmt_modified, zone, usec_to_time(start_service_time), usec_to_time(last_offline_time), status from __all_server;
# OceanBase V4.x 版本
SELECT svr_ip, zone, UNIX_TIMESTAMP(NVL(`start_service_time`, 0))*1000000 as start_service_time, status from DBA_OB_SERVERS;

# 检查数据副本是否补齐，<副本数>替换为预期副本数，返回为空说明已补齐
# OceanBase V3.x 版本
select /*+read_consistency(weak)*/ count(*)c from gv$partition group by table_id, partition_id having c != <副本数>;
# OceanBase V4.x 版本没有分区副本的概念，以下 SQL 检查日志流是否均有主，均有主则返回 0，表示正常
SELECT COUNT(1) FROM CDB_OB_LS A LEFT JOIN GV$OB_LOG_STAT B ON A.LS_ID = B.LS_ID AND A.TENANT_ID = B.TENANT_ID AND B.ROLE='LEADER' WHERE B.LS_ID IS NULL AND A.STATUS NOT IN ('CREATING', 'CREATED', 'TENANT_DROPPING', 'CREATE_ABORT', 'PRE_TENANT_DROPPING');

# 检查日志是否同步，返回为空说明已同步
# OceanBase V3.x 版本
select svr_ip, svr_port, table_id, partition_idx from __all_virtual_clog_stat where is_in_sync= 0 and is_offline = 0 and replica_type != 16;
# OceanBase V4.x 版本检查日志是否同步，返回为空说明已同步
select count(1) as unsync_cnt from GV$OB_LOG_STAT where in_sync = 'NO';

```

您可在 OCP 资源管理界面查看租户副本分布，详情请参见 [查看 Unit 分布](https://www.oceanbase.com/docs/common-ocp-1000000001127074)。

![1](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/ocp/%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5/%E6%89%A9%E5%AE%B9ob.png)

## 常见问题

**Q1: 删除 Zone 时报错 “指定的 Zone=x 上存在 Unit，不允许删除”。**

A：OCP 要求删除 Zone 前，必须先删除 Zone 上的所有租户副本。您可在资源管理界面查看 Zone 上的副本分布，删除所有副本后再删除 Zone。

**Q2: 删除租户副本时报错 “violate locality principal not allowed”。**

A：报该错误表示删除副本后，租户的 (F/L) 副本数不满足多数派，禁止删除。可在资源管理界面查看租户的副本分布，保证租户副本满足多数派。

 上一篇 下一篇 ![有帮助](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) 咨询热线
