Atualize uma instância para a edição Cloud SQL Enterprise Plus através da interligação de VPCs


Esta página mostra como usar o método de conetividade de rede de intercâmbio da VPC privada do serviço de migração de base de dados para atualizar uma instância do Cloud SQL Enterprise Edition para o Cloud SQL Enterprise Plus Edition. O serviço de migração de base de dados cria uma nova instância do Cloud SQL e migra os dados para essa instância.

Vista geral

A edição Cloud SQL Enterprise Plus é ideal para aplicações que requerem o máximo desempenho de escrita. Para mais informações acerca destas melhorias, consulte o artigo Melhorias de desempenho.

Para ativar estas melhorias para as suas instâncias da edição Enterprise do Cloud SQL existentes, tem de as atualizar para a edição Enterprise Plus do Cloud SQL através do serviço de migração de base de dados.

Antes de começar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. Ative a API Database Migration Service.

    Ative a API

  7. Certifique-se de que tem a função de administrador da migração da base de dados atribuída à sua conta de utilizador.

    Aceda ao IAM

  8. Requisitos

    O serviço de migração de base de dados oferece várias opções de base de dados de origem e métodos de conetividade de rede. Algumas fontes funcionam melhor com determinados métodos de conetividade do que com outros. Nesta página, partimos do princípio de que está a usar uma instância da edição Enterprise do Cloud SQL num ambiente onde pode configurar a sua rede para adicionar uma regra de firewall de entrada. Como não podemos saber os detalhes específicos do seu ambiente, não podemos fornecer passos detalhados no que diz respeito à configuração de rede.

    Configure a instância de origem

    Para configurar a instância de origem da edição Enterprise do Cloud SQL, conclua os passos seguintes:

    1. Se não tiver a base de dados postgres para a instância de origem, crie uma. Para mais informações, consulte o artigo Crie uma base de dados na instância do Cloud SQL.
    2. Instale o pacote pglogical nas bases de dados da instância de origem. Certifique-se de que o pacote está incluído na variável shared_preload_libraries. Para mais informações, consulte o artigo Configure as bases de dados de origem.
    3. Ative a replicação lógica e a descodificação para as bases de dados da instância de origem. Para mais informações, consulte o artigo Ative a replicação lógica e a descodificação para as bases de dados de origem.

    Configure as bases de dados de origem

    Além das bases de dados template0 e template1, o serviço de migração de base de dados migra todas as outras bases de dados na sua instância de edição Enterprise do Cloud SQL de origem.

    Em cada base de dados na instância de origem que não seja mencionada acima, conclua os seguintes passos:

    1. Para instalar a extensão pglogical na base de dados, execute o comando CREATE EXTENSION IF NOT EXISTS pglogical.

    2. Para todas as tabelas que não tenham chaves principais, migre as declarações UPDATE e DELETE manualmente.

    3. Para definir estes privilégios em cada uma das bases de dados migradas, crie um utilizador ou defina os privilégios de um utilizador existente. Use este utilizador para estabelecer ligação à instância de origem e configure-o como o utilizador na página Perfis de ligação. Este utilizador tem de ter determinados privilégios em cada uma das bases de dados migradas, bem como na base de dados postgres predefinida.

      Para definir estes privilégios, ligue-se à instância e execute os seguintes comandos:

      1. GRANT USAGE on SCHEMA SCHEMA to USER em todos os esquemas (exceto o esquema de informações e os esquemas que começam por pg_) em cada base de dados que quer migrar.
      2. GRANT USAGE on SCHEMA pglogical to PUBLIC; em cada base de dados que quer migrar.
      3. GRANT SELECT on ALL TABLES in SCHEMA pglogical to USER em todas as bases de dados para obter informações de replicação das bases de dados de origem.
      4. GRANT SELECT on ALL TABLES in SCHEMA SCHEMA to USER em todos os esquemas (exceto o esquema de informações e os esquemas que começam por pg_) em cada base de dados que quer migrar.
      5. GRANT SELECT on ALL SEQUENCES in SCHEMA SCHEMA to USER em todos os esquemas (exceto o esquema de informações e os esquemas que começam por pg_) em cada base de dados que quer migrar.
      6. ALTER USER USER with REPLICATION role

    Ative a replicação lógica e a descodificação para as bases de dados de origem

    Ative a replicação e a descodificação lógicas para as bases de dados da instância da edição Cloud SQL Enterprise definindo as flags cloudsql.logical_decoding e cloudsql.enable_pglogical como On. Para mais informações acerca destas flags, consulte o artigo Configure flags da base de dados.

    Para ativar ambas as flags, conclua os seguintes passos:

    1. Na Google Cloud consola, aceda à página Instâncias do Cloud SQL.

      Aceda a Instâncias do Cloud SQL

    2. Clique na instância de origem.
    3. Clique em Edit.
    4. Na secção Personalize a sua instância, se aparecer o menu Mostrar opções de configuração, clique nele.
    5. Expanda a secção Flags.

    6. Para definir as flags cloudsql.logical_decoding e cloudsql.enable_pglogical, conclua os seguintes passos:

      1. Clique em Adicionar uma flag de base de dados.
      2. No menu pendente, escolha a bandeira cloudsql.logical_decoding.
      3. Defina o valor deste sinalizador como On.
      4. Clique em Concluído.
      5. Repita estes passos para a opção cloudsql.enable_pglogical.
    7. Clique em Guardar.

    8. Na caixa de diálogo As alterações requerem o reinício, clique em Guardar e reiniciar. O Cloud SQL reinicia a instância de origem para que as alterações de configuração que fez às flags possam entrar em vigor.

    9. No painel Configuração, confirme as alterações na secção Indicadores da base de dados.

    Obtenha informações da instância de origem

    Para atualizar uma instância de edição Enterprise do Cloud SQL de origem, tem de obter as seguintes informações:

    • O endereço IP privado da instância. Usa este endereço IP quando cria um perfil de ligação no serviço de migração de bases de dados.
    • O nome da rede VPC que permite que a instância de destino da edição Cloud SQL Enterprise Plus comunique diretamente com a instância de origem da edição Cloud SQL Enterprise. Usa esta rede VPC quando cria uma tarefa de migração no Database Migration Service.

    Para obter informações da instância de origem do Cloud SQL Enterprise Edition, conclua os seguintes passos:

    1. Na Google Cloud consola, aceda à página Instâncias do SQL.

      Aceda a Instâncias do Cloud SQL

    2. Clique na instância de origem.
    3. Na secção Estabelecer ligação a esta instância, clique em Copiar para a área de transferência no campo Endereço IP privado.
    4. Na parte superior da página, clique em Editar.
    5. Expanda a secção Associações.
    6. Na secção Redes associadas, tome nota do nome da rede VPC que aparece no campo Rede.

    Crie um perfil de associação

    Um perfil de associação contém informações sobre a base de dados do Cloud SQL Enterprise Edition de origem. O serviço de migração de base de dados usa as informações no perfil de ligação para migrar dados da base de dados de origem para a instância de destino da edição Enterprise Plus do Cloud SQL.

    Para criar um perfil de associação, conclua os passos seguintes:

    1. Na Google Cloud consola, aceda à página Perfis de ligação no serviço de migração de bases de dados.

      Aceda aos perfis de ligação

    2. Clique em Criar perfil.

    3. Na lista pendente Motor de base de dados, selecione Cloud SQL para PostgreSQL.

    4. No campo Nome do perfil de associação, introduza um nome para o perfil de associação da base de dados de origem, como My Connection Profile.

    5. Selecione a região onde quer guardar o perfil de ligação.

    6. Na lista pendente Instância do Cloud SQL, selecione o nome da sua instância da edição Enterprise do Cloud SQL.

    7. No campo Nome do anfitrião ou endereço IP, substitua o valor pelo endereço IP privado que copiou em Obtenha informações da instância de origem do Cloud SQL Enterprise Edition.

    8. Para se autenticar na instância de origem, introduza um nome de utilizador e uma palavra-passe. Em seguida, clique em Continuar.

    9. Se quiser encriptar os seus dados, ative a encriptação SSL/TLS para a ligação entre as bases de dados de origem e de destino. Caso contrário, mantenha o valor predefinido de Nenhum.

    10. Clique em Continuar.

    11. No menu pendente Teste de conetividade, selecione Não definido.

    12. Clique em Criar.

    Crie uma tarefa de migração

    O serviço de migração de bases de dados usa tarefas de migração para migrar dados da instância de base de dados do Cloud SQL Enterprise Edition de origem para a instância do Cloud SQL Enterprise Plus Edition de destino.

    A criação de uma tarefa de migração inclui os seguintes passos:

    • Definir as definições da tarefa.
    • Selecionar o perfil de ligação que criou para a base de dados de origem do Cloud SQL Enterprise Edition. Este é o seu perfil de associação de origem.
    • Definir as definições da instância de edição do Cloud SQL Enterprise Plus de destino.
    • Configurar a conetividade entre as instâncias da base de dados de origem e de destino.
    • Testar a tarefa de migração para garantir que as informações de associação que forneceu para a tarefa são válidas.

    Defina as definições da tarefa de migração

    1. Na Google Cloud consola, aceda à página Tarefas de migração no Database Migration Service.

      Aceda às tarefas de migração

    2. Clique em Criar tarefa de migração.

    3. No campo Nome da tarefa de migração, introduza um nome para a tarefa de migração, como My Migration Job.

    4. Na lista pendente Motor da base de dados de origem, selecione Cloud SQL para PostgreSQL.

    5. Na lista pendente Motor da base de dados de destino, selecione Cloud SQL para PostgreSQL.

    6. Selecione a região de destino onde a instância da edição Cloud SQL Enterprise Plus é criada.

    7. Na lista pendente Tipo de tarefa de migração, selecione Contínuo porque quer que as alterações contínuas na base de dados da edição Enterprise do Cloud SQL de origem sejam migradas para a instância da edição Enterprise Plus do Cloud SQL de destino.

    8. Reveja os pré-requisitos necessários gerados automaticamente para refletir a forma como o ambiente tem de ser preparado para uma tarefa de migração. Estes pré-requisitos podem incluir a forma de configurar a base de dados da edição Enterprise do Cloud SQL de origem e como associá-la à instância da edição Enterprise Plus do Cloud SQL de destino.

      Recomendamos que conclua estes pré-requisitos neste passo, mas pode concluí-los em qualquer altura antes de testar ou iniciar a tarefa de migração.

    9. Clique em Guardar e continuar.

    Especifique informações sobre o perfil de associação de origem

    1. Na lista pendente Selecionar perfil de associação de origem, selecione o perfil de associação que criou.

    2. Clique em Guardar e continuar.

    Defina as definições para a instância de edição do Cloud SQL Enterprise Plus de destino

    1. No campo Palavra-passe, introduza uma palavra-passe alfanumérica para a instância de edição do Cloud SQL Enterprise Plus de destino. Esta é a palavra-passe da conta de administrador do postgres na instância.

    2. Na lista pendente Versão da base de dados, selecione a instância de destino na lista de versões do Cloud SQL suportadas para o motor de base de dados especificado.

    3. Selecione Enterprise Plus.

    4. Na secção Escolher região e zona, selecione a Google Cloud zona pretendida para a nova instância da edição Cloud SQL Enterprise Plus (ou deixe como Qualquer).

    5. Selecione a caixa de verificação IP privado.

    6. Na lista pendente VPC, selecione a rede de VPC que anotou em Obtenha informações da instância de origem do Cloud SQL Enterprise Edition.

    7. Selecione o formato da máquina para a instância da edição Cloud SQL Enterprise Plus. O tamanho do disco tem de ser igual ou superior ao tamanho da base de dados de origem.

    8. Defina o tipo de armazenamento e a capacidade de armazenamento da instância do Cloud SQL.

    9. Para criar a nova instância, clique em Criar e continuar.

    10. Na caixa de diálogo apresentada, clique em Criar destino e continuar. A criação da instância pode demorar vários minutos.

    Configure a conetividade

    1. Escolha como quer usar para estabelecer a conetividade entre as bases de dados da edição Cloud SQL Enterprise de origem e da edição Cloud SQL Enterprise Plus de destino. Para este procedimento, use a lista pendente Método de conetividade para selecionar A origem e o destino estão a usar um IP privado.
    2. Na lista pendente VPC, selecione a rede de VPC onde reside a instância de origem do Cloud SQL Enterprise Edition. Esta é a rede VPC que anotou em Obtenha informações da instância de origem do Cloud SQL Enterprise Edition.
    3. Clique em Configurar e continuar.

    Teste, crie e inicie a tarefa de migração

    1. Reveja as definições que escolheu para a tarefa de migração.

    2. Verifique se a origem foi configurada corretamente, se as instâncias da edição Cloud SQL Enterprise de origem e da edição Cloud SQL Enterprise Plus de destino conseguem comunicar entre si e se a tarefa de migração é válida:

      1. Clique em Tarefa de teste.

      2. Verifique se vê o estado Your migration job test was successful!.

      Se o teste falhar, pode resolver o problema na parte adequada do fluxo e voltar a testar.

    3. Para criar a tarefa de migração e iniciá-la imediatamente, clique em Criar e iniciar tarefa.

    4. Na caixa de diálogo apresentada, clique em Criar e iniciar.

    5. Na página Tarefas de migração, verifique se a tarefa de migração tem o estado Starting.

    6. Após alguns minutos, confirme que o estado muda para Running.

    Valide a tarefa de migração

    Para confirmar que o serviço de migração de base de dados usou a tarefa de migração para migrar dados da instância de base de dados do Cloud SQL Enterprise Edition de origem para a instância de base de dados do Cloud SQL Enterprise Plus Edition de destino, conclua os seguintes passos:

    1. Na Google Cloud consola, aceda à página Instâncias do SQL.

      Aceda a Instâncias do Cloud SQL

    2. Clique na entrada da réplica de leitura da sua tarefa de migração.

    3. Clique no ícone Ativar Cloud Shell que aparece junto ao campo Pesquisar.
    4. No comando, para se ligar à instância da base de dados da edição Enterprise Plus do Cloud SQL de destino, use o comando gcloud sql connect.

      gcloud sql connect DESTINATION_INSTANCE_NAME --user=postgres

      Substitua DESTINATION_INSTANCE_NAME pelo nome da instância de edição do Cloud SQL Enterprise Plus de destino.

    5. Opcional: se for apresentada uma caixa de diálogo Autorizar Cloud Shell, clique em Autorizar.
    6. No comando Introduza a palavra-passe, introduza a palavra-passe que indicou em Defina as definições para a instância da edição Cloud SQL Enterprise Plus de destino.
    1. No comando postgres, para listar as bases de dados e verificar se vê a instância da base de dados do Cloud SQL Enterprise Edition de origem, introduza \list.
    2. No comando postgres, para ver as tabelas associadas a esta instância da base de dados, introduza \connect SOURCE_DB_NAME. O nome do comando muda de postgres para SOURCE_DB_NAME.
    3. No comando SOURCE_DB_NAME, para ver as tabelas desta instância, introduza \dt.
    4. No comando SOURCE_DB_NAME, para conceder a este utilizador autorização para aceder aos dados nas tabelas desta instância, introduza GRANT cloudsqlexternalsync to USER;.

      Substitua USER pelo nome do utilizador que usou para se ligar à instância da base de dados da edição Enterprise Plus do Cloud SQL de destino.

    5. No comando SOURCE_DB_NAME, para ver as informações replicadas de uma tabela na instância da base de dados do Cloud SQL Enterprise Edition de origem, introduza SELECT * from TABLE_NAME;.
    6. Confirme que vê as informações corretas na tabela.

    Promova a tarefa de migração

    A promoção da tarefa de migração substitui a instância da base de dados da edição Enterprise do Cloud SQL de origem pela instância da base de dados da edição Enterprise Plus do Cloud SQL de destino como base de dados principal.

    Para promover a tarefa de migração, conclua os seguintes passos:

    1. Regresse à página Tarefas de migração.

    2. Clique na tarefa de migração que quer promover. É apresentada a página Detalhes da tarefa de migração.

    3. Pare todas as gravações na base de dados da edição Enterprise do Cloud SQL de origem.

    4. Verifique se o atraso na replicação é mínimo.

    5. Clique na tarefa de migração que quer promover. Esta tarefa tem o estado Running.

    6. Para promover a tarefa de migração, clique em Promover.

    7. Na caixa de diálogo apresentada, clique em Promover.

    8. Verifique se a tarefa de migração tem o estado Promote in progress. Após alguns minutos, confirme que o estado muda para Completed.

    A sua nova instância de base de dados da edição Cloud SQL Enterprise Plus está pronta a ser usada.

    Limpar

    Para evitar incorrer em custos na sua Google Cloud conta pelos recursos usados nesta página, use a Google Cloud consola para eliminar a tarefa de migração, o perfil de ligação, a instância de edição Enterprise do Cloud SQL de origem e o projeto, se não precisar deles.

    O que se segue?