调用ModifyDBInstanceSpec接口变更RDS实例的(包括常规实例和只读实例,不包括灾备实例和临时实例)的规格或存储空间。

升级调用该接口时,实例必须满足以下条件,否则将操作失败:

  • 实例状态为运行中。
  • 实例没有正在执行的备份任务。
  • 请求参数中必须至少指定实例规格(DBInstanceClass)和存储空间(DBInstanceStorage)其中一个参数。
  • 若降低磁盘空间配置,输入的磁盘空间不能小于实际使用空间大小的1.1倍。
  • 当前只支持对常规实例和只读实例变更配置,不支持灾备实例和临时实例。
说明 升级数据库版本(例如从基础版升级高可用版),选择相应的实例规格即可。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String ModifyDBInstanceSpec

系统规定参数,取值:ModifyDBInstanceSpec

DBInstanceId String rm-uf6wjk5xxxxxxx

待变更配置的实例ID。

PayType String Postpaid

实例当前的付费类型,取值:

  • Postpaid:按量付费
  • Prepaid:预付费
ZoneId String cn-hangzhou-b

可用区ID。

DBInstanceClass String rds.mys2.small

目标实例规格,详情请参见实例规格表。您也可以调用DescribeAvailableClasses接口查询目标地域中可用的实例规格列表。

说明
  • 本参数和DBInstanceStorage参数两者至少传入一项。
  • 调用DescribeDBInstanceAttribute可以查看实例当前使用的规格。
DBInstanceStorage Integer 20

目标存储空间大小,单位:GB。每5GB进行递增,详情请参见实例规格表。您也可以调用DescribeAvailableClasses接口查询目标实例规格中可用的存储空间范围。

说明
  • 本参数和DBInstanceClass参数两者至少传入一项。
  • RDS MySQL高可用版本地盘实例支持存储空间缩容,每5GB递减。
  • 调用DescribeDBInstanceAttribute可以查看实例当前的存储空间大小。
EffectiveTime String MaintainTime

生效时间,取值:

默认值:Immediate

EngineVersion String 5.6

数据库版本号,取值:

  • MySQL:5.5/5.6/5.7/8.0
  • SQLServer:2008r2/2012/2012_ent_ha/2012_std_ha/2012_web/2014_std_ha/2016_ent_ha/2016_std_ha/2016_web/2017_ent/2019_ent
  • PostgreSQL:9.4/10.0/11.0/12.0
  • PPAS:9.3/10.0
  • MariaDB:10.3
DBInstanceStorageType String local_ssd

实例储存类型,取值:

  • local_ssd/ephemeral_ssd:本地SSD盘
  • cloud_ssd:SSD云盘
  • cloud_essd:ESSD云盘
Direction String Up

实例变配类型,取值:

  • Up:包年包月实例的升级和按量付费实例的升级/降级。
  • Down:包年包月实例的降级。

默认值:Up

说明 如果仅变更DBInstanceStorageType参数,例如将SSD云盘变更为ESSD云盘,则此参数留空。
SourceBiz String 不涉及

弃用参数。

DedicatedHostGroupId String dhg-7a9xxxxxxxx

专属集群ID。

SwitchTime String 2019-07-10T13:15:12Z

指定变配时间。格式:yyyy-MM-ddTHH:mm:ssZ(UTC时间)。

返回数据

名称 类型 示例值 描述
DBInstanceId String rm-uf6wjk5xxxxxxx

实例ID。

OrderId Long 207938506080728

订单ID。

RequestId String 3C5CFDEE-F774-4DED-89A2-1D76EC63C575

请求ID。

示例

请求示例

http(s)://rds.aliyuncs.com/?Action=ModifyDBInstanceSpec
&DBInstanceId=rm-uf6wjk5xxxxxxx
&PayType=Postpaid
&DBInstanceClass=rds.mys2.small
&<公共请求参数>

正常返回示例

XML格式

<ModifyDBInstanceSpecResponse>
  <RequestId>3C5CFDEE-F774-4DED-89A2-1D76EC63C575</RequestId>
  <DBInstanceId>rm-uf6wjk5xxxxxxx</DBInstanceId>
  <OrderId>207938506080728</OrderId>
</ModifyDBInstanceSpecResponse>

JSON格式

{
	"RequestId": "3C5CFDEE-F774-4DED-89A2-1D76EC63C575",
	"DBInstanceId": "rm-uf6wjk5xxxxxxx",
	"OrderId": 207938506080728
}

错误码

HttpCode 错误码 错误信息 描述
400 CannotDecreaseEssdPerfLevel cannot decrease cloud essd performance level. 存储类型变更校验失败,SQL Server云盘实例只能转为云盘,SSD只能升级到SSD或ESSD。
400 InvalidEssdStorageSize invalid cloud essd storage size. 云盘存储规格有误,请检查存储规格配置。
400 NotSupportReduceDiskSize Not support reduce disk size. 操作失败,不支持减少磁盘大小。
400 INST_HAS_UNPAID_ORDER The specified Instance has unpaid order. 操作失败,当前实例存在未支付的订单,请先支付再进行操作。
400 InvalidDBInstanceClass.NotFound Specified DB instance class is not found. 当前选择的配置或规格不存在或已停售,请重新选择。
400 InvalidAvZone.Format Specified AvZone is not valid. 指定的AvZone不合法,请检查该参数的正确性。
400 OperationDenied.OrderUnPaid The operation is not permitted due to the wrong Order status (Unpaid). 操作失败,存在未支付的订单。请在账户总览中查看。
403 IncorrectDBInstanceType The database instance type does not support the operation. 操作失败,当前数据库类型不支持该操作。
403 OperationDenied.NotSupportedBackupMethod When the storage is larger than 4000 GB, only snapshot backup is supported. 当存储空间大于4000GB,仅支持快照备份。
400 OperationDenied.InvalidStorageSize The storage size limit is exceeded. 已超过磁盘空间上限,请清理磁盘空间,或扩大磁盘空间。

访问错误中心查看更多错误码。