Chame a operação UpgradeDBInstanceMajorVersion para atualizar a versão principal do mecanismo de uma instância do ApsaraDB RDS for PostgreSQL.
Depuração
Durante uma atualização, o ApsaraDB RDS mantém a instância original e cria uma nova instância com a versão principal mais recente do mecanismo. A cobrança pela nova instância inicia-se conforme o método de faturamento pagamento conforme o uso após a criação da instância, e você passa a ser cobrado. A nova instância não herda o preço reduzido oferecido à instância original. Antes de chamar esta operação, compreenda totalmente os métodos de faturamento e os preços do ApsaraDB RDS. Decida se deve atualizar a versão principal do mecanismo com base nas necessidades do seu negócio. Para obter mais informações, consulte Itens faturáveis, métodos de faturamento e preços.
Antes de atualizar a versão principal do mecanismo, chame a operação UpgradeDBInstanceMajorVersionPrecheck para verificar a atualização e, em seguida, chame a operação DescribeUpgradeMajorVersionPrecheckTask para consultar o relatório dessa verificação. Só é possível chamar a operação UpgradeDBInstanceMajorVersion quando o resultado da verificação for Success.
Antes de chamar esta operação, verifique se os seguintes requisitos foram atendidos:
A instância original executa PostgreSQL 14, PostgreSQL 13, PostgreSQL 12, PostgreSQL 11, PostgreSQL 10 ou PostgreSQL 9.4.
A instância original executa o ApsaraDB RDS High-availability Edition ou o ApsaraDB RDS Basic Edition.
A instância original reside em uma virtual private cloud (VPC). Caso a instância original esteja na rede clássica, migre-a para uma VPC antes de chamar esta operação. Para obter mais informações sobre como visualizar ou alterar o tipo de rede de uma instância, consulte Alterar o tipo de rede de uma instância do ApsaraDB RDS for PostgreSQL.
A instância original não pode ser uma instância somente leitura nem ter sido criada em um cluster dedicado.
Uma atualização causa impactos, como uma conexão transitória que dura alguns minutos. Recomendamos realizar a atualização fora dos horários de pico. Antes de prosseguir, leia a descrição em Atualizar a versão principal do mecanismo de uma instância do ApsaraDB RDS for PostgreSQL.
Parâmetros de solicitação
| Parâmetro | Tipo | Obrigatório | Exemplo | Descrição |
| Action | String | Sim | UpgradeDBInstanceMajorVersion | A operação a ser executada. Defina o valor como UpgradeDBInstanceMajorVersion. |
| DBInstanceClass | String | Não | pg.n2.medium.2c | O tipo da nova instância. As especificações de vCPU e memória da nova instância devem ser superiores ou iguais às da instância original. Por exemplo, se o tipo da instância original for Nota Para obter mais informações sobre os tipos de instância suportados, consulte Tipos de instância primária do ApsaraDB RDS for PostgreSQL. |
| DBInstanceStorage | Integer | Não | 20 | A capacidade de armazenamento da nova instância. Unidade: GB.
Nota Se a instância original utilizar SSDs locais, será possível reduzir a capacidade de armazenamento ao atualizar a versão principal do mecanismo. Para obter mais informações sobre a capacidade mínima de armazenamento, consulte Atualizar a versão principal do mecanismo de uma instância do ApsaraDB RDS for PostgreSQL. |
| PayType | String | Sim | Postpaid | O método de faturamento da nova instância. O valor é fixo como Postpaid. Nota Para obter mais informações sobre como alterar o método de faturamento da nova instância após uma atualização, consulte Alterar o método de faturamento de uma instância do ApsaraDB RDS for PostgreSQL de pagamento conforme o uso para assinatura. |
| InstanceNetworkType | String | Não | VPC | O tipo de rede da nova instância. O valor é fixo como VPC. O recurso de atualização da versão principal do mecanismo é suportado apenas para instâncias que residem em VPCs. Caso a instância original resida na rede clássica, migre-a para uma VPC antes de chamar esta operação. Para obter mais informações sobre como visualizar ou alterar o tipo de rede de uma instância, consulte Alterar o tipo de rede de uma instância do ApsaraDB RDS for PostgreSQL. |
| SwitchTimeMode | String | Não | Immediate | O momento em que o ApsaraDB RDS transfere suas cargas de trabalho para a nova instância. Este parâmetro é usado em conjunto com o parâmetro SwitchOver e entra em vigor apenas quando você define o parâmetro SwitchOver como true. Valores válidos:
|
| SwitchTime | String | Não | 2021-07-10T13:15:12Z | Parâmetro reservado. Não especifique este parâmetro. |
| SwitchOver | String | Não | false | Especifica se o ApsaraDB RDS transfere automaticamente as cargas de trabalho para a nova instância após a migração dos dados. Valores válidos:
Nota
|
| CollectStatMode | String | Não | After | O momento em que o ApsaraDB RDS coleta as estatísticas da nova instância. Valores válidos:
Nota Se você definir o parâmetro SwitchOver como false, o valor Before indica que o ApsaraDB RDS coletará as estatísticas da nova instância antes que ela comece a processar solicitações de leitura e gravação, enquanto o valor After indica que a coleta ocorrerá após o início do processamento dessas solicitações. |
| TargetMajorVersion | String | Não | 13,0 | A versão principal do mecanismo da nova instância. O valor deste parâmetro deve corresponder à versão principal do mecanismo na qual a verificação de atualização foi realizada. Nota Chame a operação UpgradeDBInstanceMajorVersionPrecheck para realizar uma verificação de atualização em uma versão principal do mecanismo. |
| DBInstanceId | String | Não | pgm-bp1gm3yh0ht1**** | O ID da instância original. |
| VPCId | String | Não | vpc-bp1opxu1zkhn00gzv**** | O ID da VPC onde a instância original reside. Chame a operação DescribeDBInstanceAttribute para consultar o ID da VPC da instância. |
| VSwitchId | String | Não | vsw-bp10aqj6o4lclxdrm****,vsw-bp10aqj6o4lclxdrm**** |
Nota Os vSwitches especificados devem residir na mesma zona da instância original. Chame a operação DescribeVSwitches para consultar os IDs dos vSwitches. |
| PrivateIpAddress | String | Não | 172,16.XX.XX | O endereço IP interno da nova instância. Não especifique este parâmetro. O ApsaraDB RDS atribui automaticamente um endereço IP interno com base nos valores dos parâmetros VPCId e vSwitchId. |
| UsedTime | String | Não | 1 | Parâmetro reservado. Não especifique este parâmetro. |
| Period | String | Não | Month | Parâmetro reservado. Não especifique este parâmetro. |
| DBInstanceStorageType | String | Não | cloud_essd | O tipo de armazenamento da nova instância. Valores válidos:
O recurso de atualização da versão principal do mecanismo baseia-se em snapshots de SSD. Selecione um tipo de armazenamento de acordo com as seguintes condições:
|
| ZoneId | String | Não | cn-hangzhou-h | O ID da zona da nova instância. Chame a operação DescribeRegions para consultar o ID da zona. Selecione uma zona pertencente à região onde a instância original reside. A zona pode ser diferente da zona da instância original. |
| ZoneIdSlave1 | String | Não | cn-hangzhou-h | O ID da zona da instância secundária da nova instância. Especifique este parâmetro apenas quando a instância original executar o ApsaraDB RDS High-availability Edition. Selecione uma zona pertencente à região onde a instância original reside. A zona pode ser diferente da zona da instância original. Chame a operação DescribeRegions para consultar o ID da zona. |
| ZoneIdSlave2 | String | Não | cn-hangzhou-h | Parâmetro reservado. Não especifique este parâmetro. |
Parâmetros de resposta
|
Parâmetro |
Tipo |
Exemplo |
Descrição |
|
DBInstanceId |
String |
pgm-bp1gm3yh0ht1**** |
O ID da instância. |
|
RequestId |
String |
006729E5-2A33-5955-89E3-651D3F44EBE6 |
O ID da solicitação. |
|
OrderId |
String |
21128667463**** |
O ID do pedido. |
|
TaskId |
Long |
416980000 |
Um parâmetro reservado. |
Exemplos
Exemplos de solicitações
http(s)://rds.aliyuncs.com/?Action=UpgradeDBInstanceMajorVersion
&PayType=Postpaid
&<Common request parameters>
Exemplos de respostas de sucesso
Formato XML
HTTP/1.1 200 OK
Content-Type:application/xml
<UpgradeDBInstanceMajorVersion>
<RequestId>006729E5-2A33-5955-89E3-651D3F44EBE6</RequestId>
<DBInstanceId>pgm-bp1gm3yh0ht1****</DBInstanceId>
<OrderId>21128667463****</OrderId>
</UpgradeDBInstanceMajorVersion>
Formato JSON
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "006729E5-2A33-5955-89E3-651D3F44EBE6",
"DBInstanceId" : "pgm-bp1gm3yh0ht1****",
"OrderId" : "21128667463****"
}
Códigos de erro
|
Código de status HTTP |
Código de erro |
Mensagem de erro |
Descrição |
|
400 |
InvalidUpgradePrecheckResult |
The upgrade precheck failed. No successful precheck task found in the past 7 days |
A mensagem de erro retornada porque a verificação de atualização falhou e nenhuma verificação de atualização foi bem-sucedida nos últimos sete dias. |
|
400 |
TargetEngineVersion.Parameters.NotFound |
targetEngineVersion is missing in the request. |
A mensagem de erro retornada porque o parâmetro TargetMajorVersion não foi especificado. |
|
400 |
InvalidDBInstanceStorageType |
The specified DBInstanceStorageType is invalid. |
A mensagem de erro retornada porque o valor do parâmetro DBInstanceStorageType é inválido. |
|
400 |
InvalidInstanceNetworkType |
The specified InstanceNetworkType is invalid. |
A mensagem de erro retornada porque o valor do parâmetro InstanceNetworkType é inválido. |
|
400 |
InvalidVPCId |
The specified VPCId is invalid. |
A mensagem de erro retornada porque o valor do parâmetro VPCId é inválido. |
|
400 |
InvalidDedicatedHostGroupId |
The specified DedicatedHostGroupId is invalid. |
A mensagem de erro retornada porque um ID de cluster dedicado inválido foi especificado. |
|
400 |
InvalidPayType |
The specified PayType is invalid. |
A mensagem de erro retornada porque o valor do parâmetro PayType é inválido. |
|
400 |
InvalidEngineVersion |
The specified EngineVersion is invalid. |
A mensagem de erro retornada porque o valor do parâmetro TargetMajorVersion é inválido. |
|
400 |
InvalidDBInstanceStorage |
The specified DBInstanceStorage is invalid. |
A mensagem de erro retornada porque o valor do parâmetro DBInstanceStorage é inválido. |
|
400 |
InvalidSwitchOver |
The specified SwitchOver is invalid. |
A mensagem de erro retornada porque o valor do parâmetro SwitchOver é inválido. |
|
400 |
PrimaryInstanceWithReadonlyNotSupport |
The specified primary instance with the read-only instance does not support the operation. |
A mensagem de erro retornada porque existem instâncias somente leitura anexadas à instância original. Esta operação não é suportada para instâncias com instâncias somente leitura anexadas. |
|
400 |
InvalidSwitchTimeMode |
The specified SwitchTimeMode is invalid. |
A mensagem de erro retornada porque o valor do parâmetro SwitchTimeMode é inválido. |
|
400 |
InvalidSwitchTime |
The specified SwitchTime is invalid. |
A mensagem de erro retornada porque o valor do parâmetro SwitchTime é inválido. |
|
400 |
InvalidCollectStats |
The specified CollectStats is invalid. |
A mensagem de erro retornada porque o valor do parâmetro CollectStatMode é inválido. |
|
400 |
IncorrectDBInstanceState |
The current instance state does not support this operation. |
A mensagem de erro retornada porque esta operação não é suportada para o estado atual da instância. |
|
400 |
InvalidDBinstanceClass.ValueNotSupported |
The specified parameter DBinstanceClass is invalid. |
A mensagem de erro retornada porque o valor do parâmetro DBInstanceClass é inválido. |
|
404 |
InvalidDBInstanceName.NotFound |
The database instance does not exist. |
A mensagem de erro retornada porque o nome da instância original não foi encontrado. Verifique se o nome está correto. |
|
404 |
IncorrectDBInstanceLockMode |
Current DB instance lock mode does not support this operation. |
A mensagem de erro retornada porque a instância está bloqueada. |
Para obter uma lista de códigos de erro, visite a página de Códigos de erro do serviço.