---
title: 升级报错 tenant unit not exist but partition exist-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于升级报错 tenant unit not exist but partition exist相关的常见问题和使用技巧，帮助您快速解决升级报错 tenant unit not exist but partition exist的难题。
---
切换语言

- 简体中文
- English

划线反馈

# 升级报错 tenant unit not exist but partition exist

更新时间：2026-07-02 15:41

适用版本： V2.1.x、V2.2.x、V3.1.x、V3.2.x 内容类型：Troubleshoot  

## 适用版本

OceanBase 数据库 2.x、3.x 版本

## 问题现象

有两种情况会触发 `tenant unit not exist but partition exist` 这种报错。

- 在使用 OCP 升级 OceanBase 数据库版本时，预检查报错。
 - 升级过程中遇到此报错，日志如下：

  ```
  upgrade checker failed with 2 reasons: [(1066, u'10.xxx.xxx.xx', 2882) tenant unit not exist but partition exist] , [(1030, u'10.xxx.xxx.xx', 2882) tenant unit not exist but partition exist]

  ```

## 问题原因

上述两种情况均是由于垃圾副本的残留信息导致的预检查不通过，残留信息可能是因为垃圾回收机制（GC）的回收任务在执行过程中发生意外。 ​ 可以通过下述语句确认是否有垃圾副本的残留信息 ：

```shell
obclient [(none)]> SELECT tenant_id, svr_ip, svr_port FROM __all_virtual_partition_info WHERE (tenant_id, svr_ip, svr_port) not in (SELECT tenant_id, svr_ip, svr_port FROM __all_unit, __all_resource_pool WHERE __all_unit.resource_pool_id = __all_resource_pool.resource_pool_id group by tenant_id, svr_ip, svr_port) GROUP BY tenant_id, svr_ip, svr_port;

```

## 解决方法

根据上面查出来的 OBServer 地址，在该 OBServer 上执行 GC 任务。

```shell
obclient [(none)]> ALTER SYSTEM RUN JOB 'check_partition_table' server='xxx.xxx.xxx.xxx:2882';

```

Previous

[OceanBase 数据库升级错误，虚拟表未更新](https://www.oceanbase.com/knowledge-base/oceanbase-database-20000001046)

Next

[集群升级报错 micro_block_merge_verify_level 校验失败](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000267134) ![有帮助](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) 咨询热线
