Faça upgrade da versão principal do banco de dados migrando dados

Nesta página, você verá como migrar os dados para uma instância que executa uma versão posterior do PostgreSQL. Antes de continuar com esse método, faça o upgrade da versão principal do banco de dados no local.

Há duas maneiras de fazer upgrade da versão principal do banco de dados da instância do Cloud SQL para PostgreSQL migrando dados.

  • Opção 1. Use o Database Migration Service (DMS, na sigla em inglês). O DMS é compatível com a migração de uma instância do Cloud SQL para PostgreSQL. Também é possível usá-lo para fazer upgrade da versão do banco de dados.
  • Opção 2. Mova os dados de uma versão do PostgreSQL para outra exportando os dados da instância atual e importando esses dados para uma nova instância executando a versão posterior do PostgreSQL. Esse processo envolve inatividade. Você coloca a instância atual em modo somente leitura antes de iniciar a exportação.

O restante desta página discute a segunda opção.

Planejar um upgrade de versão principal

  1. Escolha uma versão principal de destino.

    Veja a lista de versões compatíveis com o Cloud SQL.

  2. Considere os recursos oferecidos em cada versão do PostgreSQL e as incompatibilidades de endereço.

    Novas versões principais apresentam alterações incompatíveis que podem exigir que você modifique o código, o esquema ou as configurações do banco de dados do aplicativo antes de fazer upgrade da instância do banco de dados. Revise as notas de lançamento da versão principal de destino para determinar as incompatibilidades que você precisa resolver. Se você estiver pulando versões principais, resolva as incompatibilidades listadas para cada versão que você está ignorando.

  3. Teste o upgrade com uma simulação.

    Faça uma simulação do processo de upgrade de ponta a ponta com uma instância de teste antes de fazer upgrade do banco de dados de produção. É possível testar o upgrade usando um clone em vez de seu banco de dados de produção para evitar qualquer impacto no desempenho da exportação na carga de trabalho de produção.

    Além de validar se o upgrade foi concluído com êxito, execute testes para entender o tempo de inatividade esperado do upgrade, confirmar o fluxo de trabalho do upgrade e garantir que o aplicativo se comporte conforme esperado no banco de dados atualizado. Se você não ativou os aumentos de armazenamento automáticos, anote o armazenamento em disco usado pela instância de simulação atualizada para determinar se é necessário aumentar a capacidade de armazenamento da produção antes do upgrade.

  4. Decida quando você quer fazer upgrade.

Migrar seus dados

A migração envolve o comando pg_dump para exportar os dados da instância de origem e o pg_restore para importar os dados para a instância de destino.

Para migrar os dados para uma instância do Cloud SQL executando uma versão mais recente do banco de dados, siga estas etapas:

  1. Crie a instância de destino com a versão pretendida do PostgreSQL.

    Certifique-se de que essa instância tenha:

    • armazenamento suficiente para conter todos os dados da instância atual;
    • as mesmas redes autorizadas da instância atual. Saiba mais;
    • as mesmas contas de usuário, com os mesmos privilégios e senhas do PostgreSQL.

    Para mais informações, consulte Como criar uma instância.

  2. Verifique se você consegue estabelecer uma conexão com a nova instância usando as ferramentas locais do PostgreSQL e as atualize se necessário.

  3. Para exportar os dados da instância atual para um arquivo dump do PostgreSQL, siga as instruções em Como exportar dados para importação no Cloud SQL.

    Não exporte o banco de dados postgres do sistema. O banco de dados postgres é o padrão para conectar antes de criar outros bancos de dados. Depois de criar outro banco de dados, alterne para ele para criar tabelas e inserir dados. Não use o banco de dados postgres para os dados do seu aplicativo.

  4. Crie um bucket do Cloud Storage, se necessário, e faça upload do arquivo dump SQL nesse contêiner básico.

  5. Importe os dados para a instância de destino com as instruções em Como importar bancos de dados do PostgreSQL a partir do Cloud Storage.

  6. Opcional. Depois de concluir o processo de upgrade, configure a replicação entre as instâncias de origem e de destino usando pglogical para atualizar o destino com todas as alterações que ocorreram desde que o dump inicial foi iniciado. Quando as duas instâncias estiverem sincronizadas, será possível promover a instância de destino.

    Para mais informações sobre como usar pglogical para implementar a replicação contínua, consulte Configurar sua origem.

  7. Atualize os aplicativos para se conectar à nova instância.

  8. Se a nova instância estiver operando corretamente, exclua a instância anterior.

A seguir