All Products
Search
Document Center

ApsaraDB RDS:UpgradeDBInstanceMajorVersion

Last Updated:Apr 18, 2026

Initiates a major version upgrade for an RDS PostgreSQL instance.

Operation description

Supported engines

RDS PostgreSQL

Related documentation

This API operation incurs fees. Before you call this API, review the related documentation to understand the fees, prerequisites, and potential impacts.

Upgrade the database major version of an RDS PostgreSQL instance

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

rds:UpgradeDBInstanceMajorVersion

update

*DBInstance

acs:rds:*:{#accountId}:dbinstance/{#DBInstanceId}

None None

Request parameters

Parameter

Type

Required

Description

Example

DBInstanceClass

string

No

The new instance type of the instance. The new instance type must have at least the same CPU and memory as the source instance. This parameter is not required if UpgradeMode is set to inPlaceUpgrade or zeroDownTimeUpgrade.

For example, if the source instance has the instance type pg.n2.small.2c, which provides 1 vCPU and 2 GB of memory, you can upgrade it to pg.n2.medium.2c, which provides 2 vCPUs and 4 GB of memory.

Note

For more information about the instance types of ApsaraDB RDS for PostgreSQL, see Primary ApsaraDB RDS for PostgreSQL instance types.

pg.n2.medium.2c

DBInstanceStorage

integer

No

The new storage space of the instance. Unit: GB. This parameter is not required if UpgradeMode is set to inPlaceUpgrade or zeroDownTimeUpgrade.

Valid values:

  • ESSD PL1 cloud disk: 20 to 3,200

  • ESSD PL2 cloud disk: 500 to 3,200

  • ESSD PL3 cloud disk: 1,500 to 3,200

  • ultra disk: 40 to 2,000

Note

You can reduce the storage space when upgrading an instance that uses high-performance local disks. For details on the minimum required storage space, see Upgrade the major engine version of an ApsaraDB RDS for PostgreSQL instance.

20

PayType

string

Yes

The billing method. The value is fixed to Postpaid, which specifies the pay-as-you-go method.

Note

To change the billing method of the instance after the upgrade, see Convert a pay-as-you-go instance to a subscription instance.

Postpaid

InstanceNetworkType

string

No

The new network type of the instance. This parameter is fixed to VPC. This upgrade is supported only for instances in a VPC.

If your instance is in the Classic Network, you must first change its network type to VPC. For more information about how to view or change the network type, see Change the network type of an ApsaraDB RDS for PostgreSQL instance.

VPC

SwitchTimeMode

string

No

Specifies when to perform the switchover. This parameter applies only when SwitchOver is set to true.

Valid values:

  • Immediate: Performs the switchover immediately.

  • MaintainTime: Performs the switchover during the maintenance window. To change the maintenance window, call the ModifyDBInstanceMaintainTime operation.

Immediate

SwitchTime

string

No

Reserved. Do not configure this parameter.

2021-07-10T13:15:12Z

SwitchOver

string

No

Specifies whether to switch traffic to the new instance after the upgrade.

Valid values:

  • true: Perform an automatic switchover. This option is typically used to perform the final upgrade after you confirm that your workloads run stably on the new version.

  • false: Do not perform an automatic switchover. This option is typically used to test the compatibility of your workloads with the new version before the final upgrade.

Note
  • If you perform a switchover:
    • The switchover cannot be rolled back. Use this option with caution.

    • During the switchover, the source instance becomes read-only and cannot process write requests. We recommend performing the switchover during off-peak hours.

    • You cannot perform a switchover if the source instance has read-only instances. In this case, you must upgrade without a switchover, and the existing read-only instances are not cloned. After the upgrade, you must create new read-only instances for the upgraded primary instance.

  • If you do not perform a switchover:
    • Your workloads on the source instance are not affected during the migration.

    • If you upgrade without a switchover, you must update your application to use the new instance's endpoint after the migration is complete. For more information about how to view an endpoint, see View or change the internal and public endpoints and port numbers.

false

CollectStatMode

string

No

Specifies when to collect statistics for the database.

  • Before: Collect statistics before the switchover. This helps keep workloads stable. If the instance stores a large amount of data, the upgrade may take longer.

  • After: Collect statistics after the switchover. This accelerates the upgrade. After the upgrade, accessing tables for which no statistics are generated may result in inaccurate execution plans. During peak hours, this can also cause the database to become unavailable.

Note

In a no-switchover scenario, Before means statistics are collected before the new instance is available, and After means they are collected after it becomes available.

After

TargetMajorVersion

string

No

The target major engine version for the upgrade. This value must match the version specified in the precheck.

Note

To perform a precheck for the major engine version upgrade, call the UpgradeDBInstanceMajorVersionPrecheck operation.

13.0

DBInstanceId

string

No

The ID of the source instance.

pgm-bp1gm3yh0ht1****

VPCId

string

No

The ID of the VPC. This parameter is not required if UpgradeMode is set to inPlaceUpgrade or zeroDownTimeUpgrade.

To query the VPC ID of the source instance, call the DescribeDBInstanceAttribute operation.

vpc-bp1opxu1zkhn00gzv****

VSwitchId

string

No

The ID of the VSwitch for the target instance. This parameter is not required if UpgradeMode is set to inPlaceUpgrade or zeroDownTimeUpgrade.

  • If the source instance is a Basic Edition instance, specify the VSwitch ID for the target instance.

  • If the source instance is a High-availability Edition instance, you can specify the VSwitch IDs for the primary and secondary instances. Separate the IDs with a comma (,).

Note

The VSwitch that you specify must be in the same zone as the source instance. To query VSwitch IDs, call the DescribeVSwitches operation.

vsw-bp10aqj6o4lclxdrm****,vsw-bp10aqj6o4lclxdrm****

PrivateIpAddress

string

No

The private IP address of the target instance. You do not need to set this parameter, as the system automatically assigns an IP address based on the specified VPCId and VSwitchId.

172.16.XX.XX

UsedTime

string

No

Reserved. Do not configure this parameter.

1

Period

string

No

Reserved. Do not configure this parameter.

Month

DBInstanceStorageType

string

No

The new storage type of the instance.

Valid values:

  • cloud_ssd: SSD cloud disk

  • cloud_essd: ESSD PL1 cloud disk

  • cloud_essd2: ESSD PL2 cloud disk

  • cloud_essd3: ESSD PL3 cloud disk

  • general_essd: ultra disk

Major engine version upgrades use cloud disk snapshots. The following storage types are supported for the new instance after the upgrade:

  • If the source instance uses an SSD cloud disk, you can select an SSD cloud disk.

  • If the source instance uses an ESSD cloud disk, you can select ESSD PL1 cloud disk, ESSD PL2 cloud disk, ESSD PL3 cloud disk, or ultra disk.

  • If the source instance uses a high-performance local disk, you can select ESSD PL1 cloud disk, ESSD PL2 cloud disk, ESSD PL3 cloud disk, or ultra disk.

cloud_essd

ZoneId

string

No

The ID of the target primary zone. This parameter is not required if UpgradeMode is set to inPlaceUpgrade or zeroDownTimeUpgrade.

To query zone IDs, call the DescribeRegions operation.

ApsaraDB RDS for PostgreSQL allows you to place the new instance in a different zone within the same region as part of the upgrade.

cn-hangzhou-j

ZoneIdSlave1

string

No

The ID of the target secondary zone. This parameter is applicable only to High-availability Edition instances and is not required if UpgradeMode is set to inPlaceUpgrade or zeroDownTimeUpgrade.

ApsaraDB RDS for PostgreSQL allows you to place the new secondary instance in a different zone within the same region as part of the upgrade.

To query zone IDs, call the DescribeRegions operation.

cn-hangzhou-j

ZoneIdSlave2

string

No

Reserved. Do not configure this parameter.

cn-hangzhou-j

UpgradeMode

string

No

The upgrade mode. This parameter is required if SwitchOver is set to true. Valid values:

  • inPlaceUpgrade: An in-place upgrade. The major engine version upgrade is performed on the source instance, and no new instance is created. After the upgrade, the major engine version of the source instance is upgraded, and the instance retains its existing order, instance name, tags, CloudMonitor alert rules, and backup rules.

  • blueGreenDeployment: A blue-green deployment. This mode keeps the source instance and creates a new instance that runs the target major version. No charges are incurred during the creation of the new instance. After creation, both the source and new instances are billed. The new instance does not inherit any discounts from the source instance.

  • zeroDownTimeUpgrade: A zero-downtime upgrade. The system uses pg_upgrade to upgrade the source instance to the target version and uses native logical replication for incremental updates. You can trigger a switchover during the upgrade and validate the higher-version instance before the switchover. From the start of the upgrade until you trigger the switchover, the instance remains available for read and write operations. During the switchover, the instance is in read-only mode for a few seconds.

inPlaceUpgrade

CustomExtraInfo

string

No

AllowDDL

boolean

No

Response elements

Element

Type

Description

Example

object

Response parameters.

DBInstanceId

string

The instance ID.

pgm-bp1gm3yh0ht1****

OrderId

string

The order ID.

21128667463****

RequestId

string

The request ID.

006729E5-2A33-5955-89E3-651D3F44EBE6

TaskId

integer

Reserved.

416980000

Examples

Success response

JSON format

{
  "DBInstanceId": "pgm-bp1gm3yh0ht1****",
  "OrderId": "21128667463****",
  "RequestId": "006729E5-2A33-5955-89E3-651D3F44EBE6",
  "TaskId": 416980000
}

Error codes

HTTP status code

Error code

Error message

Description

400 InvalidUpgradePrecheckResult The upgrade precheck failed. No successful precheck task found in the past 7 days The upgrade precheck failed. No successful precheck task is found within the last 7 days.
400 TargetEngineVersion.Parameters.NotFound targetEngineVersion is missing in the request. The targetEngineVersion is missing in the request.
400 InvalidDBInstanceStorageType The specified DBInstanceStorageType is invalid. The specified DBInstanceStorageType parameter is invalid.
400 InvalidInstanceNetworkType The specified InstanceNetworkType is invalid. The specified InstanceNetworkType is invalid.
400 InvalidVPCId The specified VPCId is invalid. The specified VPCId parameter is invalid.
400 InvalidDedicatedHostGroupId The specified DedicatedHostGroupId is invalid. The specified DedicatedHostGroupId parameter is invalid.
400 InvalidPayType The specified PayType is invalid. The specified PayType is invalid.
400 InvalidEngineVersion The specified EngineVersion is invalid. The specified EngineVersion parameter is invalid.
400 InvalidDBInstanceStorage The specified DBInstanceStorage is invalid. The specified DBInstanceStorage parameter is invalid.
400 InvalidSwitchOver The specified SwitchOver is invalid. The specified SwitchOver parameter is invalid.
400 PrimaryInstanceWithReadonlyNotSupport The specified primary instance with the read-only instance does not support the operation. This operation is not supported for the specified primary instance that has a read-only instance.
400 InvalidSwitchTimeMode The specified SwitchTimeMode is invalid. The specified SwitchTimeMode parameter is invalid.
400 InvalidSwitchTime The specified SwitchTime is invalid. The specified SwitchTime parameter is invalid.
400 InvalidCollectStats The specified CollectStats is invalid. The specified CollectStats parameter is invalid.
400 IncorrectDBInstanceState The current instance state does not support this operation. The operation is not supported. The RDS instance is not in a ready state.
400 InvalidDBinstanceClass.ValueNotSupported The specified parameter DBinstanceClass is invalid. The specified parameter DBinstanceClass is invalid.
400 InvalidUpgradeMode The Specified UpgradeMode is not valid. The specified upgrade mode is invalid.
400 Order.ComboInstanceNotAllowOperate A package instance is not allowed to operate independently. A package instance is not allowed to operate independently.
400 Price.PricingPlanResultNotFound Pricing plan price result not found. Pricing plan price result not found.
400 Order.NoRealNameAuthentication You have not passed the real-name authentication and do not meet the purchase conditions. Please log in to the user center for real-name authentication. You have not passed the real-name authentication and do not meet the purchase conditions. Please log in to the cost and cost for real-name authentication.
400 InsufficientAvailableQuota Your account quota limit is less than 0, please recharge before trying to purchase. Your account available limit is less than 0, please recharge before trying to purchase.
400 CommodityServiceCalling.Exception Failed to call commodity service. Failed to call commodity service return.
400 RegionDissolvedEOM Dear customer, Alibaba Cloud plans to optimize and adjust the current region. Cloud services in this region will cease operations. You are currently unable to operate new purchase orders. Thank you for your understanding and support. Hello, Alibaba Cloud plans to optimize and adjust the current region. Cloud services in this region will stop operating. In order to ensure your business continuity and smooth transition of data migration, you are currently unable to operate new purchase orders. Thank you for your understanding and support.
400 Commodity.InvalidComponent The module you purchased is not legal, please buy it again. The module you purchased is not legal, please buy it again.
400 RegionEndTimeDissolvedAustralia Cloud services in the Australia (Sydney) region will be discontinued. Set the validity date to September 30, 2024 or earlier than September 30, 2024. Hello customer, this area has been abolished.
400 Price.CommoditySys Commodity system call exception. Commodity system call exception.
400 Pay.InsufficientBalance Insufficient available balance. Insufficient available balance.
400 Order.PeriodInvalid There is a problem with the period you selected, please choose again. There is a problem with the period you selected, please choose again.
400 pay.noCreditCard Account not bound to credit card.
400 Order.InstHasUnpaidOrder There is an unpaid order for the service you have purchased. Please pay or void it before placing the order. There is an unpaid order for the service you have purchased. Please pay or void it before placing the order.
400 noAvailablePaymentMethod No payment method is specified for your account. We recommend that you add a payment method. No payment method has been specified for your account. We recommend that you add a payment method.
400 BasicInfoUncompleted Your information is incomplete. Complete your information before the operation. Your basic information is not complete, please complete your basic information before operation.
400 Risk.RiskControlRejection Your account is abnormal, please contact customer service for details. Your account is abnormal, please contact customer service for details.
400 Api.NotSupport Specified api is not supported. The current interface does not support.
400 ContainForbiddenLabelError There is a label that prohibits placing orders. Please contact your distributor for assistance. You cannot place the order because a tag indicates that order placement is prohibited. Contact your distributor.
400 InvalidDBInstanceId.NotFound The DBInstanceId provided does not exist in records. The DBInstanceId provided does not exist.
400 InvalidInstanceLevel.DiskType Specified instance level not support request disk type The current instance type does not support the specified storage type.
400 InvalidParam Sepcified wal level Parameter is invalid. There are still logical slots in instance, so it can not be set as replica. The specified wal_level parameter is invalid. There is still a copy slot in the instance, so it cannot be set to replica.
400 KmsApiError User secret key invalid. The user key is invalid.
400 System.SaleValidateFailed Sales expression validation system error. A system error occurs when the sales expression is verified.
400 Abs.InvalidAccount.NotFound account is not found. The account does not exist.
400 SqlExecuteFailedOrTimeout sql command execution failed or timed out:%s. SQL command execution failed or timed out
400 ColdData.EngineVersionNotSupport The current instance engine version not support coldDataEnabled. The current instance engine version not support coldDataEnabled.
400 ColdData.MinorVersionNotSupport The current instance minor version not support coldDataEnabled. The current instance minor version not support coldDataEnabled.
400 IncorrectTargetClasscode The current instance type does not support this operation. This operation is not supported by the instance type.
400 InvalidConnectionString.Duplicate Specified connection string already exists in the RDS. The link address name is duplicate. Please reset the connection string.
400 RequiredParam.NotFound Required input param is not found.
400 Parameters.Invalid Parameter error, please check the parameters. Parameter error, please check the parameters.
400 BackupPolicyNotSupport Cold Data won't open with CrossBackup or Flash Backup, please check Backup Policy. Cold Data won't open with CrossBackup or Flash Backup, please check Backup Policy.
400 InvalideStatus.Format The instance status does not support this operation.
400 InvalidReleasedKeepPolicy.Format Specified Released Keep Policy is not valid. Specified Released Keep Policy is not valid.
400 InvalidDBInstanceEngineType.Format the DB instance engine type does not support this operation. This operation is not supported for the database engine of the instance.
400 Pay.NoCreditCard No credit cards. No credit cards.
400 VpcNetworkTypeNotSupport The vpc network type instance does not support this operation. The vpc network type instance does not support this operation.
400 MirrorInsExists Specified DB instance mirror ins already existed. Specified DB instance mirror ins already existed.
400 UnsupportedClassCode The specified DB instance class stops selling. The specified DB instance class stops selling.
400 InvalidBackupSet The specified database does not exist in the backup set. The specified database does not exist in the backup set.
400 OrdTCommodityQueryError Failed to query for product. Failed to query product.
400 ProductInstanceReleased The instance has been released. Please check before placing the order. The instance has been released, please verify and place an order.
400 RegionEndTimeDissolvedIndia The region is no longer supported. The region is no longer supported.
400 InvalidVSwitchId.Format The specified vswitch Id format is incorrect.
400 UpgradeModeNotSupport For instances with local SSD, this upgrade Mode is not allowed. For instances with cloud SSD, it is recommended to upgrade minor version at first. This upgrade method cannot be selected for local disk instances. For cloud disk instances, we recommend that you upgrade the minor version.
500 InvalidUpgradeMode The Specified Parameter UpgradeMode is not valid. Parameter UpgradeMode value error
500 ExternalFailure The request processing has failed due to external service failure. The request processing has failed due to external service failure.
500 RequestMetaDataFailed The service request failed. Please try again later or contact service personnel. The service request failed. Please try again later or contact service personnel.
500 InvokeProxyFailure The request processing has failed due to service failure of rds api. The request failed to be processed due to an RDS API failure.
403 OrderStatus.UnPaid The specified db instance has unpaid order. The instance has an unpaid order. Please pay first and try again.
403 InvalidReduceDiskSize The storage capacity after the scale-down must be larger than the used amount. The scale-in target capacity cannot be less than the current storage space usage
403 CloudSSDNotSupport Cloud ssd does not support this operation, please upgrade to essd.
403 InvalidUserOperatorPermission The user permission does not support this operation. The user is not authorized to perform this operation.
403 InvalidVswitchId Specified conn vswitch id is not valid.
403 IncorrectMinorVersion Current engine minor version does not support operations. This operation is not supported for the current minor engine version.
403 OperationDenied.ZoneResource There is no available zone for inventory. There is no available zone for inventory.
403 NotInFlowController Sorry,no permission. Sorry,no permission.
403 InvalidKmsKey Kms key is disabled.
403 InvalidInstanceLevel.Malformed Current DB instance level does not support this operation. The specified database instance type does not support this operation.
404 InvalidDBInstanceName.NotFound The database instance does not exist. The name of the RDS instance cannot be found. Check the name of the RDS instance.
404 IncorrectDBInstanceLockMode Current DB instance lock mode does not support this operation. The operation failed. The RDS instance is locked.
404 InvalidClusterKms The current instance does not authorized to access the Key Management Service. The instance does not have permissions to access Key Management Service (KMS).
404 Request.NotFound The requested resource is not available. The requested resources are unavailable.
404 HostInfo.NotFound The specified host info is not found.

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.