
# 批量数据库补丁升级 - PatchingDatabasesinBatches
#### 功能介绍
批量升级数据库补丁版本。
#### 接口约束
- 该接口支持如下数据库实例：
  - GeminiDB Cassandra
  
  - GeminiDB Influx
  
  - GeminiDB Redis
   

- 只支持即时升级，请选择在业务低峰期进行升级。
 
#### 调试
您可以在[API Explorer](https://apiexplorer.developer.huaweicloud.com/apiexplorer/doc?product=GaussDBforNoSQL&api=UpgradeDbVersion)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-nosql/nosql_05_0023.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                                                  | 访问级别  | 资源类型（\*为必须） | 条件键 | 别名                                         | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | gaussdbfornosql:instance:batchUpgradeDatabaseVersion | write | -           | -   | nosql:instance:batchUpgradeDatabaseVersion | -      |
     
  
 
#### URI
POST /v3/{project_id}/instances/db-upgrade
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释：** 租户在某一region下的project ID。获取方法请参见[获取项目ID](https://support.huaweicloud.com/api-nosql/nosql_projectid.html)。 **约束限制：** 不涉及。 **取值范围：** 长度为32个字符，仅由英文字母和数字组成。 **默认取值：** 不涉及。 |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释：** 用户Token。 通过调用IAM服务[获取用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)接口获取。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
表3请求Body参数 
| 参数           | 是否必选 | 参数类型             | 描述                                                                                                                                                                                                                                                                                                                                                            |
|:---|:---|:---|:---|
| instance_ids | 是    | Array of strings | **参数解释：** 指定需要升级数据库补丁版本的实例ID列表。可以调用[查询实例列表和详情 - QueryingInstancesandDetails](https://support.huaweicloud.com/api-nosql/nosql_05_0016.html)接口获取。 **约束限制：** 一次传入实例ID为同一引擎的实例。 一次最多可传入10个实例ID。 |
   
#### 响应参数
**状态码： 202**
表4响应Body参数 
| 参数              | 参数类型                                                                         | 描述                                                        |
|:---|:---|:---|
| upgrade_results | Array of [UpgradeResult] objects | **参数解释：** 批量升级结果。 |
   
 表5UpgradeResult 
| 参数            | 参数类型   | 描述                                                                                                                                                                            |
|:---|:---|:---|
| job_id        | String | **参数解释：** 任务ID。仅当补丁版本升级任务提交成功时返回该字段。 **取值范围：** 不涉及。     |
| instance_id   | String | **参数解释：** 实例ID。 **取值范围：** 不涉及。                           |
| error_code    | String | **参数解释：** 错误码。仅当补丁版本升级任务提交失败时返回该字段。 **取值范围：** 不涉及。    |
| error_message | String | **参数解释：** 失败原因。仅当补丁版本升级任务提交失败时返回该字段。 **取值范围：** 不涉及。 |
   
**状态码： 400**
表6响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                     |
|:---|:---|:---|
| error_code | String | **参数解释：** 错误码。 **取值范围：** 不涉及。 |
| error_msg  | String | **参数解释：** 错误消息。 **取值范围：** 不涉及。  |
   
**状态码： 500**
表7响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                        |
|:---|:---|:---|
| error_code | String | **参数解释：** 错误码。 **取值范围：** 不涉及。      |
| error_msg  | String | **参数解释：** 错误消息。 **取值范围：** 不涉及。 |
   
#### 请求示例
批量升级数据库补丁版本
```
POST https://{Endpoint}/v3/619d3e78f61b4be68bc5aa0b59edcf7b/instances/db-upgrade
{ 
   "instance_ids" : [ "046287aae57843b1a7bc61b7a8812f41in13", "3d1e04f49efa473a8c7eaf07ed7ff870in13" ] 
 }
```
#### 响应示例
**状态码： 202**
Accepted
```
{ 
  "upgrade_results" : [ { 
    "instance_id" : "046287aae57843b1a7bc61b7a8812f41in13", 
    "job_id" : "e4616470-733d-41de-a9b0-a260709293d3" 
  }, { 
    "instance_id" : "3d1e04f49efa473a8c7eaf07ed7ff870in13", 
    "error_code" : "DBS.200011", 
    "error_message" : "The status of DB instance does not allow the operation." 
  } ] 
}
```
#### 状态码
请参见[状态码](https://support.huaweicloud.com/api-nosql/nosql_status_code.html)。
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-nosql/nosql_error_code.html)。
