![](https://cdn.qwiklabs.com/assets/labs/start_lab-f45aca49782d4033c3ff688160387ac98c66941d.png)
Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you restart it, you'll have to start from the beginning.
- On the top left of your screen, click Start lab to begin
Prepare the source database for migration.
/ 20
Create a Database Migration Service connection profile.
/ 20
Create and start a continuous migration job.
/ 20
Confirm the data in Cloud SQL for PostgreSQL.
/ 20
Promote Cloud SQL to be a stand-alone instance for reading and writing data.
/ 20
O Database Migration Service oferece opções de jobs contínuos ou únicos para migrar dados para o Cloud SQL usando diferentes opções de conectividade, incluindo listas de permissões de IP, peering de VPC e túneis SSH reversos (veja os documentos sobre opções de conectividade em https://cloud.google.com/database-migration/docs/postgresql/configure-connectivity).
Neste laboratório, você vai migrar um banco de dados independente do PostgreSQL (executado em uma máquina virtual) para o Cloud SQL para PostgreSQL usando um job contínuo do Database Migration Service e peering de VPC para conectividade.
Para migrar um banco de dados pelo Database Migration Service, é necessário preparar o banco de dados de origem, incluindo a criação de um usuário dedicado com direitos de replicação, adicionando a extensão de banco de dados pglogical
ao banco de dados de origem e atribuindo ao usuário direitos aos esquemas e tabelas no banco de dados a ser migrado, e ao banco de dados postgres.
Após criar e executar o job de migração, confirme que uma cópia inicial do seu banco de dados foi migrada com sucesso para sua instância do Cloud SQL para PostgreSQL. Você também vai descobrir como jobs contínuos de migração aplicam atualizações de dados do seu banco de dados de origem à sua instância do Cloud SQL. Para concluir o job de migração, promova a instância do Cloud SQL a um banco de dados independente para ler e gravar dados.
Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer é iniciado quando você clica em Começar o laboratório e mostra por quanto tempo os recursos do Google Cloud vão ficar disponíveis.
Este laboratório prático permite que você realize as atividades em um ambiente real de nuvem, não em uma simulação ou demonstração. Você vai receber novas credenciais temporárias para fazer login e acessar o Google Cloud durante o laboratório.
Confira os requisitos para concluir o laboratório:
Clique no botão Começar o laboratório. Se for preciso pagar, você verá um pop-up para selecionar a forma de pagamento. No painel Detalhes do laboratório à esquerda, você vai encontrar o seguinte:
Se você estiver usando o navegador Chrome, clique em Abrir console do Google Cloud ou clique com o botão direito do mouse e selecione Abrir link em uma janela anônima.
O laboratório ativa os recursos e depois abre a página Fazer login em outra guia.
Dica: coloque as guias em janelas separadas lado a lado.
Se necessário, copie o Nome de usuário abaixo e cole na caixa de diálogo Fazer login.
Você também encontra o Nome de usuário no painel Detalhes do laboratório.
Clique em Seguinte.
Copie a Senha abaixo e cole na caixa de diálogo de boas-vindas.
Você também encontra a Senha no painel Detalhes do laboratório.
Clique em Seguinte.
Acesse as próximas páginas:
Depois de alguns instantes, o console do Google Cloud será aberto nesta guia.
O Cloud Shell é uma máquina virtual com várias ferramentas de desenvolvimento. Ele tem um diretório principal permanente de 5 GB e é executado no Google Cloud. O Cloud Shell oferece acesso de linha de comando aos recursos do Google Cloud.
Depois de se conectar, vai notar que sua conta já está autenticada, e que o projeto está configurado com seu PROJECT_ID. A saída contém uma linha que declara o projeto PROJECT_ID para esta sessão:
gcloud
é a ferramenta de linha de comando do Google Cloud. Ela vem pré-instalada no Cloud Shell e aceita preenchimento com tabulação.
Clique em Autorizar.
A saída será parecida com esta:
Saída:
Saída:
Exemplo de saída:
gcloud
, acesse o guia com informações gerais sobre a gcloud CLI no Google Cloud.
Essa página vai mostrar as informações de status ou dar a opção de ativar a API.
A API Service Networking é necessária para configurar o Cloud SQL para que ele ofereça suporte ao peering da VPC e a conexões em um endereço IP particular.
Essa página vai mostrar as informações de status ou dar a opção de ativar a API.
Nesta tarefa, você vai adicionar recursos de apoio ao banco de dados de origem. Eles são necessários para que o Database Migration Service execute a migração. São eles:
pglogical
aos bancos de dados postgres
, orders
e gmemegen_db
no servidor independente.migration_admin
(com permissões para replicação) para migração de banco de dados e fornecer a esse usuário as permissões necessárias para acessar os esquemas e as relações.Nesta etapa, você vai fazer o download e adicionar a extensão de banco de dados pglogical
aos bancos de dados postgres e orders na instância da VM postgresql-vm
.
No console do Google Cloud, no Menu de navegação (), clique em Compute Engine > Instâncias de VM.
No tópico postgresql-vm
, abaixo de Conectar
, clique em SSH.
Se for solicitado, clique em Autorizar.
No terminal na nova janela do navegador, instale a extensão de banco de dados pglogical
:
pglogical
é um sistema de replicação lógica implementado inteiramente como uma extensão PostgreSQL. Ele é totalmente integrado e não requer gatilhos nem programas externos. Essa alternativa à replicação física é um método altamente eficiente de replicar dados usando um modelo de publicar/assinar para replicação seletiva. Leia mais em: https://github.com/2ndQuadrant/pglogical
Em pg_hba.conf
, estes comandos adicionaram uma regra para permitir o acesso a todos os hosts:
Em postgresql.conf
, estes comandos definiram a configuração mínima para que pglogical detecte em todos os endereços:
Os snippets de código acima foram adicionados ao final dos arquivos relevantes e o serviço PostgreSQL foi reiniciado.
pglogical
aos bancos de dados postgres
, orders
e gmemegen_db
.Além dos bancos de dados postgresql padrão, aqui também é possível ver os bancos de dados orders
e gmemegen_db
fornecidos para este laboratório. O banco de dados gmemegen_db
não será utilizado neste laboratório, mas será incluído na migração para uso em um laboratório futuro.
Nesta, etapa, você criará um usuário dedicado para gerenciar a migração do banco de dados.
Nesta etapa, você vai atribuir as permissões necessárias ao usuário migration_admin
para permitir que o Database Migration Service migre o banco de dados.
pglogical
e as tabelas para o banco de dados postgres
.pglogical
para o banco de dados orders
.public
para o banco de dados orders
.pglogical
para o banco de dados gmemegen_db
.public
para o banco de dados gmemegen_db
.Os bancos de dados de origem estão prontos para a migração. As permissões que você atribuiu ao usuário migration_admin
são tudo que é necessário para que o Database Migration Service migre os bancos de dados postgres
, orders
e gmemegen_db
.
Torne o usuário migration_admin
o proprietário das tabelas no banco de dados orders
, assim você poderá editar os dados de origem mais tarde, quando testar a migração.
Clique em Verificar meu progresso para conferir o objetivo.
Nesta tarefa, você criará um perfil de conexão para a instância de origem do PostgreSQL.
Nesta etapa, você vai identificar o endereço IP interno da instância do banco de dados de origem que será migrado para o Cloud SQL.
No console do Google Cloud, no Menu de navegação (), clique em Compute Engine > Instâncias de VM.
Encontre a linha com a instância postgresql-vm.
Copie o valor de IP interno (por exemplo, 10.128.0.2).
Um perfil de conexão guarda informações sobre a instância do banco de dados de origem (por exemplo, PostgreSQL independente) e é usado pelo Database Migration Service para migrar dados da origem para a instância do banco de dados de destino do Cloud SQL. Uma vez que o perfil de conexão é criado, ele pode ser reutilizado em todos os jobs de migração.
Nesta etapa, você criará um novo perfil de conexão para a instância de origem do PostgreSQL.
No console do Google Cloud, no Menu de navegação (), clique em Migração de banco de dados > Perfis de conexão.
Clique em + Criar perfil.
Em Mecanismo de banco de dados, selecione PostgreSQL.
Em Nome do perfil de conexão, digite postgres-vm.
Em Nome do host ou endereço IP, digite o IP interno para a instância de origem do PostgreSQL que você copiou na tarefa anterior (por exemplo, 10.128.0.2)
Em Porta, digite 5432.
Em Nome de usuário, digite migration_admin.
Em Senha, digite DMS_1s_cool! .
Em Região, selecione
Mantenha os valores padrão dos outros campos.
Clique em Criar.
Um novo perfil de conexão chamado postgres-vm vai aparecer na lista de perfis de Conexão.
Clique em Verificar meu progresso para conferir o objetivo.
Ao criar um novo job de migração, primeiro é necessário definir a instância do banco de dados de origem usando um perfil de conexão criado anteriormente. Depois disso, crie uma nova instância de banco de dados de destino e configure a conectividade entre as instâncias de origem e de destino.
Nesta tarefa, você usará a interface do job de migração para criar uma nova instância de banco de dados do Cloud SQL para PostgreSQL e a definirá como o destino para o job contínuo de migração da instância de origem do PostgreSQL.
Nesta etapa, você vai criar um novo job contínuo de migração.
No console do Google Cloud, no Menu de navegação (), clique em Migração de banco de dados > Jobs de migração.
Clique em + Criar job de migração.
Em Nome do job de migração, digite vm-to-cloudsql.
Em Mecanismo de banco de dados de origem, selecione PostgreSQL.
Em Região de destino, selecione
Em Mecanismo de banco de dados de destino, selecione Cloud SQL para PostgreSQL.
Em Tipo de job de migração, selecione Contínuo.
Mantenha os valores padrão das outras configurações.
Nesta etapa, você vai definir a instância de origem para a migração.
Mantenha os valores padrão das outras configurações.
Nesta etapa, você vai criar a instância de destino para a migração.
Em ID da instância de destino, digite postgresql-cloudsql.
Em Senha, digite supersecret!.
Em Escolher uma edição do Cloud SQL, selecione a edição Empresarial.
Em Versão do banco de dados, selecione Cloud SQL para PostgreSQL 13.
Na sessão Escolher região e zona, selecione Zona única e selecione
Em Conectividade da instância, selecione IP particular e IP público.
Selecione Use um intervalo de IP alocado automaticamente.
Mantenha os valores padrão das outras configurações.
Observação: isso pode levar alguns minutos. Se uma nova tentativa for solicitada, clique no botão Tentar de novo para atualizar a API Service Networking.
Quando essa etapa for concluída, uma mensagem atualizada vai notificar que a instância usará a conexão de serviço gerenciado atual.
Será necessário editar o arquivo pg_hba.conf na instância da VM para permitir o acesso ao intervalo de IP gerado automaticamente no ponto 5 da etapa anterior. Você fará isso em uma etapa posterior antes de testar a configuração da migração ao final desta tarefa.
Insira as informações adicionais necessárias para criar a instância de destino no Cloud SQL.
Em Tipos de máquina, selecione 1 vCPU, 3,75 GB
Em Tipo de armazenamento, selecione SSD
Em Capacidade de armazenamento, selecione 10 GB
Clique em Criar e continuar.
Se precisar confirmar, clique em Criar destino e continuar. Uma mensagem vai informar que a instância do banco de dados de destino está sendo criada. Continue para a próxima etapa enquanto espera.
Nesta etapa, você vai definir o método de conectividade para a migração.
Em Método de conectividade, selecione Peering de VPC.
Em VPC, selecione padrão.
O peering de VPC é configurado pelo Database Migration Service usando as informações fornecidas para a rede VPC (a rede padrão neste exemplo).
Ao ver uma mensagem atualizada dizendo que a instância de destino foi criada, prossiga para a próxima etapa.
Nesta etapa, você vai editar o arquivo de configuração do PostgreSQL pg_hba.conf
para permitir que o Database Migration Service acesse o banco de dados independente do PostgreSQL.
Obter intervalo de endereços IP alocado. No console do Google Cloud, no Menu de navegação (), clique com o botão direito do mouse em Rede VPC > Peering de rede VPC e abra em uma nova aba.
Clique na entrada servicenetworking-googleapis-com
.
Na guia Rotas importadas, selecione e copie o Intervalo de IPs de destino
(por exemplo, 10.107.176.0/24).
Na sessão do terminal na instância da VM, edite o arquivo pg_hba.conf
desta forma:
substitua o intervalo "todos os endereços IP" (0.0.0.0/0) pelo intervalo copiado no ponto 3 acima.
Salve e saia do editor nano com Ctrl-O, Enter, Ctrl-X
Reinicie o serviço PostgreSQL para que as mudanças entrem em vigor. Na sessão do Terminal da instância da VM:
Nesta etapa, você vai testar e iniciar o job de migração.
Na guia Database Migration Service aberta anteriormente, confira os detalhes do job de migração.
Clique em Job de teste.
Após um teste bem-sucedido, clique em Criar e iniciar job.
Se precisar confirmar, clique em Criar e iniciar.
Nesta etapa, você vai confirmar se o job contínuo de migração está sendo executado.
No console do Google Cloud, no Menu de navegação (), clique em Migração de banco de dados > Jobs de migração.
Clique no job de migração vm-to-cloudsql para ver a página de detalhes.
Revise o status do job de migração.
Quando o status do job mudar para Em execução CDC em andamento, prossiga para a próxima tarefa.
Clique em Verificar meu progresso para conferir o objetivo.
No console do Google Cloud, no Menu de navegação (), clique em Bancos de dados > SQL.
Expanda o ID de instância chamado postgresql-cloudsql-master.
Clique na instância postgresql-cloudsql (réplica de leitura do PostgreSQL).
No menu Instância réplica, clique em Bancos de dados.
Observe que os bancos de dados chamados postgres, orders e gmemegen_db foram migrados para o Cloud SQL.
No menu Instância réplica, clique em Visão geral.
Role para baixo até a sessão Conectar a esta instância e clique em Abrir Cloud Shell.
O comando para conectar ao PostgreSQL vai pré-preencher no Cloud Shell:
Se precisar, clique em Autorizar para a API.
Você acaba de ativar o console interativo do PostgreSQL para a instância de destino.
distribution_centers
:(Saída)
Você acaba de ativar o console interativo do PostgreSQL para a instância de destino.
distribution_centers
:(Saída)
Observe que a nova linha adicionada no banco de dados independente orders
agora está presente no banco de dados migrado.
Clique em Verificar meu progresso para conferir o objetivo.
No console do Google Cloud, no Menu de navegação (), clique em Migração de banco de dados > Jobs de migração.
Clique no nome do job de migração vm-to-cloudsql para ver a página de detalhes.
Clique em Promover.
Se precisar confirmar, clique em Promover.
Quando a promoção for concluída, o status do job será atualizado para Concluído.
Observe que postgresql-cloudsql agora é uma instância independente para ler e gravar dados.
Clique em Verificar meu progresso para conferir o objetivo.
Você aprendeu a configurar um job contínuo do Database Migration Service para migrar bancos de dados de uma instância do PostgreSQL para o Cloud SQL para PostgreSQL.
Esses treinamentos ajudam você a aproveitar as tecnologias do Google Cloud ao máximo. Nossas aulas incluem habilidades técnicas e práticas recomendadas para ajudar você a alcançar rapidamente o nível esperado e continuar sua jornada de aprendizado. Oferecemos treinamentos que vão do nível básico ao avançado, com opções de aulas virtuais, sob demanda e por meio de transmissões ao vivo para que você possa encaixá-las na correria do seu dia a dia. As certificações validam sua experiência e comprovam suas habilidades com as tecnologias do Google Cloud.
Manual atualizado em 14 de maio de 2024
Laboratório testado em 14 de maio de 2024
Copyright 2025 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.