---
title: "上传 RPM 包 - OceanBase 数据库 V4.3.0 | OceanBase 文档中心"
description: 上传 RPM 包 本文档介绍如何上传升级需要的 RPM 包。 调用说明 接口约束 obshell Server 会对该 API 进行安全校验，详细介绍可参见 API 混合加密 。 请求路径 POST /api/v1/upgrade/package 请求类型 multipart/form-data 请求参数 参数 类型…
---
切换语言

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

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

# 上传 RPM 包

更新时间：2026-04-10 11:58:35

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.3.0/zh-CN/700.reference/1500.Components-and-Tools/100.manage/100.obshell/400.obshell-api-reference/900.upload-rpm.md)  

本文档介绍如何上传升级需要的 RPM 包。

## 调用说明

### 接口约束

obshell Server 会对该 API 进行安全校验，详细介绍可参见 [API 混合加密](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000694620)。

### 请求路径

POST /api/v1/upgrade/package

### 请求类型

multipart/form-data

### 请求参数

| 参数 | 类型 | 必选 | 示例值 | 描述 |
| --- | --- | --- | --- | --- |
| file | file | 是 | 无 | 指定需要上传的 RPM 包 |

### 返回结果

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| successful | bool | 请求是否成功。 |
| timestamp | time.Time | 服务端完成请求的时间戳。 |
| duration | int | 服务端处理请求的时间（毫秒）。 |
| status | int | 符合 HTTP Status 规范的编码。 |
| traceId | string | 请求的 Trace ID。 |
| data | UpgradePkgInfo | 详情参见下文 **UpgradePkgInfo 信息的数据结构**。 |
| error | ApiError | 请求产生的 Error，包含如下信息：   - `code`：错误码。 - `message`：错误详细信息。 - `subErrors`：子错误信息。 |

UpgradePkgInfo 信息的数据结构：

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| pkgId | int | 软件包 ID |
| name | string | 软件包名称 |
| version | string | 软件包版本 |
| releaseDistribution | string | 软件包的发行版构建号 |
| distribution | string | 软件包的发行版 |
| release | string | 软件包的构建号 |
| architecture | string | 软件包架构 |
| Size | int | 软件包解压大小，单位字节 |
| PayloadSize | int | 软件包大小，单位字节 |
| ChunkCount | int | 软件包切片数量 |
| Md5 | string | 软件包的 MD5 |
| UpgradeDepYaml | string | 软件包的升级路径文件 |
| GmtModify | time.Time | 软件包的修改时间 |

## 示例

### 请求示例

```json
 -F "file=@/home/rpmbuild/RPMS/x86_64/oceanbase-ce-4.2.1.1-101000062023110109.el7.x86_64.rpm"
/api/v1/upgrade/package

```

### 返回示例

```json
{
  "successful": true,
  "timestamp": "2024-01-09T16:55:58.153159003+08:00",
  "duration": 68288,
  "status": 200,
  "traceId": "42464438789e774e",
  "data": {
    "PkgId": 1,
    "Name": "oceanbase-ce",
    "Version": "4.2.1.1",
    "ReleaseDistribution": "101000062023110109.el7",
    "Distribution": "el7",
    "Release": "101000062023110109",
    "Architecture": "x86_64",
    "Size": 433648329,
    "PayloadSize": 96547244,
    "ChunkCount": 6,
    "Md5": "550d75397013d00ca0a8e529d17020c3",
    "UpgradeDepYaml": "# 描述oceanbase各个版本升级依赖关系\n# 参考文档 release/ptw5y7\n\n# 对于每一个正式发布的ob版本，在下面的yaml文档中添加一项，包括如下属性：\n#  * version: 待升级的版本，或者升级过程中经过的版本；一般用A.B.C的版本号，如果是A.B.C-D的形式，表示build号必须大于等于D\n#  * can_be_upgraded_to: 表示该版本经过OB QA兼容性测试，可以*直接*升级到的ob版本号，是一个列表可以包括多个版本\n#  * deprecated: 缺省为False。如果为True，表示这个版本已经废除。可以作\n#     为升级的起点，可以作为升级过度版本，但是不能作为升级目标版本。\n#  * require_from_binary: 缺省为False。如果为True，表示升级过程中如果作为中间版本，除了运行upgrade脚本，还需要把observer也升级到该版本\n#\n\n# OCP的OB升级模块会读取本文件，给定升级的起始版本和目标版本，自动在满\n# 足上述约束的情况下寻找一个升级的最短路径。基本算法是：\n# 基于如下描述构建一个图，每个版本一个结点，can_be_upgraded_to关系定义\n# 一条边，寻找起始版本和升级目标两个版本之间的最短路径。除了起始点，其\n# 他节点不能是deprecated。如果有A.B.C和A.B.C-D两种节点匹配，优先选择后\n# 者。\n#\n\n- version: 4.0.0.0\n  can_be_upgraded_to:\n      - 4.1.0.0\n\n# 4.1.0.x is barrier\n- version: 4.1.0.0-100000192023032010   # 4.1 BETA版本 不能作为目标版本\n  can_be_upgraded_to:\n    - 4.1.0.0\n  deprecated: True\n\n- version: 4.1.0.0\n  can_be_upgraded_to:\n      - 4.1.0.1\n\n- version: 4.1.0.1\n  can_be_upgraded_to:\n      - 4.1.0.2\n\n- version: 4.1.0.2\n  can_be_upgraded_to:\n      - 4.2.0.0\n  require_from_binary:\n    value: True\n    when_come_from: [4.0.0.0, 4.1.0.0-100000192023032010]\n\n- version: 4.2.0.0-100000152023080109   # 4.2 RC2版本 不能作为目标版本\n  can_be_upgraded_to:\n    - 4.2.0.0\n  deprecated: True\n\n- version: 4.2.0.0-100010022023081817   # 4.2 RC2 hotfix版本 不能作为目标版本\n  can_be_upgraded_to:\n    - 4.2.0.0\n  deprecated: True\n\n- version: 4.2.0.0\n  can_be_upgraded_to:\n      - 4.2.1.0\n\n# 4.2.1.x is barrier\n- version: 4.2.1.0\n  can_be_upgraded_to:\n      - 4.2.1.1\n\n- version: 4.2.1.1\n  can_be_upgraded_to:\n      - 4.3.0.0\n  require_from_binary:\n    value: True\n    when_come_from: [4.1.0.0, 4.1.0.1, 4.1.0.2, 4.2.0.0]\n",
    "GmtModify": "0001-01-01T00:00:00Z"
  }
}

```

## 相关文档

除通过命令行调用 API 接口外，还可以通过 SDK 方法调用 API。

- 通过 obshell-sdk-python 请求 API 方法的介绍可参见 [上传 RPM 包](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000904136)。
 - 通过 obshell-sdk-go 请求 API 方法的介绍可参见 [上传 RPM 包](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000904163)。

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