Fazer upgrade para uma nova versão principal
Quando uma versão principal de um banco de dados estiver em seu término de vida (EOL), será uma boa ideia fazer upgrade para uma versão principal atual.
Localize as versões disponíveis do Databases for PostgreSQL na página do IBM Cloud catálogo, na Cloud Databases comando de plug-in da CLI ibmcloud cdb deployables-show
ou na Cloud Databases API /deployables
terminal.
Ao fazer upgrade para uma nova instância, também é necessário mudar as informações de conexão no aplicativo.
Requisitos para atualizar para a versão principal mais recente " PostgreSQL de " PostgreSQL " v12
Se você tiver o pg_repack
instalado, é necessário removê-lo antes de executar o upgrade. Isso pode ser feito com um comando como:
DROP EXTENSION pg_repack;
Após o upgrade, reinstale pg_repack
. Isso pode ser feito com o seguinte comando:
CREATE EXTENSION pg_repack;
Se você estiver usando o site PostGIS,, deverá primeiro atualizar para PostGIS antes de atualizar para PostgresSQL. Isso pode ser feito executando o seguinte comando em um banco de dados com o site PostGIS instalado.
SELECT postgis_extensions_upgrade();
Use a seguinte consulta para validar a atualização da extensão do Postgis.
SELECT postgis_full_version();
Fazendo upgrade por meio de uma réplica somente leitura
Faça o upgrade configurando uma réplica somente leitura Provisione uma réplica somente leitura com a mesma versão de banco de dados da sua implantação
e aguarde enquanto ela replica todos os seus dados. Quando a implantação e a réplica estiverem sincronizadas, promova e atualize a réplica somente leitura para uma implantação completa e autônoma que esteja executando a nova versão do banco
de dados. Para executar a etapa de upgrade e promoção, use uma solicitação POST para o ponto de extremidade /deployments/{id}/remotes/promotion
com a versão para a qual você deseja fazer upgrade no corpo da solicitação.
Esta solicitação é semelhante a:
curl -X POST \
https://api.{region}.databases.cloud.ibm.com/v5/ibm/deployments/{id}/remotes/promotion \
-H 'Authorization: Bearer <>' \
-H 'Content-Type: application/json' \
-d '{
"promotion": {
"version": "14",
"skip_initial_backup": false
}
}' \
skip_initial_backup
é opcional. Se configurado como true
, a nova implementação não fará um backup inicial quando a promoção for concluída. Sua nova implementação é disponibilizada em menos tempo, mas o backup dela não
ocorre até a execução do próximo backup automático ou da realização de um sob demanda.
Simulando a promoção e o upgrade
Para avaliar os efeitos dos principais upgrades de versão, acione uma execução seca. Uma simulação simula a promoção e o upgrade, com os resultados impressos nos logs do banco de dados. Acesse e visualize os registros do seu banco de dados por meio da integração de análise de registro. Isso garante que a versão que você está executando atualmente com suas extensões possa ser atualizada com êxito para a versão pretendida.
A simulação deve ser executada com skip_initial_backup
configurado como false
e version
definida.
O comando é semelhante a:
curl -X POST \
https://api.{region}.databases.cloud.ibm.com/v5/ibm/deployments/{id}/remotes/promotion \
-H 'Authorization: Bearer <>' \
-H 'Content-Type: application/json' \
-d '{
"promotion": {
"version": "14",
"skip_initial_backup": false,
"dry_run": true
}
}' \
Upgrade de backup e restauração
É possível fazer upgrade de sua versão do banco de dados restaurando um backup de seus dados em uma nova implementação que esteja executando a nova versão do banco de dados
Fazendo upgrade na IU
Faça upgrade para uma nova versão ao restaurar um backup do menu Backups de seu Painel de implementação. Clique em Restore em um backup para acessar a página de provisionamento em uma nova guia, onde você pode alterar algumas opções para a nova implantação. Uma das opções é a versão do banco de dados, que é preenchida automaticamente com as versões disponíveis para upgrade. Selecione uma versão e clique em Create (Criar ) para iniciar o processo de provisionamento e restauração.
Fazendo upgrade por meio da CLI
Para atualizar e restaurar a partir de um backup por meio da CLI do site IBM Cloud, use o comando de provisionamento no controlador de recursos.
ibmcloud resource service-instance-create <DEPLOYMENT_NAME_OR_CRN> <SERVICE_ID> <SERVICE_PLAN_ID> <REGION>
Os parâmetros service-name
, service-id
, service-plan-id
e region
são todos necessários. Você também fornece o -p
com a versão e os parâmetros de ID de backup em um objeto JSON.
A nova implementação é dimensionada automaticamente com o mesmo disco e a memória que a implementação de origem no momento do backup.
Este comando é semelhante a:
ibmcloud resource service-instance-create example-upgrade databases-for-postgresql standard us-south \
-p \ '{
"backup_id": "crn:v1:bluemix:public:databases-for-postgresql:us-south:a/54e8ffe85dcedf470db5b5ee6ac4a8d8:1b8f53db-fc2d-4e24-8470-f82b15c71717:backup:06392e97-df90-46d8-98e8-cb67e9e0a8e6",
"version":14
}'
Fazendo upgrade por meio da API
Conclua as etapas necessárias para usar a API do controlador de recursos antes de usá-la para fazer upgrade
de um backup. Em seguida, envie à API uma solicitação POST
. Os parâmetros name
, target
, resource_group
e resource_plan_id
são todos necessários. Você também fornece a versão
e o ID de backup. A nova implementação tem a mesma alocação de memória e de disco que a implementação de origem no momento do backup.
Este comando é semelhante a:
curl -X POST \
https://resource-controller.cloud.ibm.com/v2/resource_instances \
-H 'Authorization: Bearer <>' \
-H 'Content-Type: application/json' \
-d '{
"name": "my-instance",
"target": "bluemix-us-south",
"resource_group": "5g9f447903254bb58972a2f3f5a4c711",
"resource_plan_id": "databases-for-postgresql-standard",
"backup_id": "crn:v1:bluemix:public:databases-for-postgresql:us-south:a/54e8ffe85dcedf470db5b5ee6ac4a8d8:1b8f53db-fc2d-4e24-8470-f82b15c71717:backup:06392e97-df90-46d8-98e8-cb67e9e0a8e6",
"version":14
}'
Atualização forçada
Após a data de fim de vida útil, todas as implantações ativas Databases for PostgreSQL na versão obsoleta serão atualizadas à força para a próxima versão compatível. Por exemplo, a versão 12 do PostgreSQL (obsoleta) é atualizada para a versão 13.
Faça o upgrade antes da data de fim de vida útil para evitar os seguintes riscos:
- Não são fornecidos SLAs para esse tipo de upgrade forçado.
- Pode ocorrer alguma perda de dados.
- Seu aplicativo pode passar por um tempo de inatividade prolongado.
- Seu aplicativo pode parar de funcionar se for incompatível com a nova versão.
- Não é possível controlar o momento em que esse upgrade ocorrerá em sua implementação.
- Não há processo de reversão para essa atualização forçada.
Para saber as datas de fim de vida útil, consulte a página de política de versão.