A migração de uma carga de trabalho de outra plataforma para o Cloud SQL para PostgreSQL geralmente envolve o uso do Google Cloud console para importar dados de um arquivo dump SQL que você exporta do ambiente anterior.
Este tutorial mostra como criar os Google Cloud recursos necessários e importar um banco de dados SQL para uma instância do Cloud SQL para PostgreSQL. O tutorial demonstra as práticas recomendadas ao migrar para o Cloud SQL para PostgreSQL, incluindo o uso de uma rede de nuvem privada virtual (VPC) com acesso a serviços particulares e a ativação do IP particular para a instância do Cloud SQL.
Ao seguir as etapas, mantenha os valores padrão das configurações, a menos que especificado de outra forma.
Objetivos
- Baixe um arquivo dump SQL de amostra.
- Crie uma rede de nuvem privada virtual com acesso a serviços particulares.
- Crie um bucket do Cloud Storage e faça upload de um arquivo dump SQL para ele.
- Crie uma instância do Cloud SQL para PostgreSQL configurada para IP particular.
- Criar um usuário.
- Crie um banco de dados de destino.
- Importe do arquivo dump para um novo banco de dados.
- Verifique se o banco de dados foi importado acessando a estrutura e executando uma consulta.
Custos
Neste documento, você vai usar os seguintes componentes faturáveis do Google Cloud:
Para gerar uma estimativa de custo baseada na projeção de uso,
use a calculadora de preços.
Ao concluir as tarefas descritas neste documento, é possível evitar o faturamento contínuo excluindo os recursos criados. Para mais informações, consulte Limpeza.
Antes de começar
- Faça login na sua Google Cloud conta do. Se você começou a usar o Google Cloud, crie uma conta para avaliar o desempenho dos nossos produtos em situações reais. Clientes novos também recebem US $300 em créditos para executar, testar e implantar cargas de trabalho.
-
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 role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud SQL, Cloud SQL Admin, Compute Engine, Cloud Storage APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
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 role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud SQL, Cloud SQL Admin, Compute Engine, Cloud Storage APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
Funções exigidas
Para conseguir as permissões que você precisa para concluir este tutorial, peça ao administrador para conceder a você os seguintes papéis do IAM no seu projeto:
-
Administrador do Cloud SQL (
roles/cloudsql.admin) -
Administrador de armazenamento (
roles/storage.admin) -
Administrador de rede do Compute (
roles/compute.networkAdmin)
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias usando personalizados papéis ou outros predefinidos papéis.
Receber um arquivo dump de banco de dados de amostra
Neste tutorial, você vai usar um pequeno banco de dados de amostra que contém códigos de países e capitais do mundo.
Baixe o arquivo SQL do banco de dados countries para o ambiente local: countries-postgres.sql.
Criar uma rede com acesso a serviços particulares
Antes de criar o restante dos recursos, crie uma rede VPC para executar seus serviços. O acesso a serviços particulares permite restringir o acesso ao banco de dados do Cloud SQL estabelecendo uma conexão particular entre sua rede externa e o Cloud SQL para PostgreSQL usando endereços IPv4 internos.
No Google Cloud console do, acesse a página Redes VPC.
Clique em Criar rede VPC.
No campo do nome, digite
tutorial-network.Em Modo de criação da sub-rede, selecione Personalizado.
No campo do nome, digite
tutorial-subnet.Selecione uma região próxima de você.
Em Intervalo IPv4, insira
10.0.0.0/24.Em Acesso privado do Google, selecione Ativado.
Clique em Concluído.
Na parte de baixo da página, clique em Criar.
Depois que o processo de criação da rede VPC terminar, você poderá configurar o acesso a serviços particulares para a rede.
- Na tela "Redes VPC", clique em tutorial-network.
- Na barra de menus de tutorial-network, clique em Acesso a serviços particulares.
- Clique em Intervalos de IP alocados para serviços.
- Clique em Alocar intervalo de IP.
- Para o nome, insira
tutorial-range. - Em Intervalo de endereços IP, selecione Personalizado.
- No campo Intervalo, insira
192.168.0.0/20. - Clique em Alocar.
- No submenu, clique em Conexões particulares com os serviços.
- Clique em Criar conexão.
- No menu suspenso Alocação atribuída, selecione tutorial-range.
- Clique em Conectar. Em um ou dois minutos, o Google Cloud console vai mostrar uma mensagem informando que você criou uma conexão particular.
Criar um bucket do Cloud Storage
Em seguida, crie um bucket do Cloud Storage para armazenar o arquivo dump SQL que você baixou anteriormente. A ferramenta de importação do Cloud SQL espera que o arquivo dump esteja em um bucket. Um bucket do Cloud Storage precisa ter um nome que seja exclusivo globalmente.
- No Google Cloud console do, acesse a página Buckets do Cloud Storage.
- Clique em Criar.
- Para o nome do bucket, crie um nome globalmente exclusivo composto por letras minúsculas, números e hifens. Use um gerador de strings aleatórias , como random.org/strings , para gerar o nome. Anote o nome escolhido.
- Clique em Continuar.
- Em Tipo de local, selecione Região. Essa é a opção de menor custo.
- Escolha a mesma região que você selecionou para sua sub-rede. Localizar seus Google Cloud recursos na mesma região reduz a latência, melhora a velocidade, diminui os custos de transferência de dados e simplifica a rede.
- Clique em Continuar.
- Clique em Criar.
- Se uma caixa de diálogo for exibida, deixe a opção Aplicar a prevenção do acesso público neste bucket selecionada e clique em Confirmar.
A página Detalhes do bucket do novo bucket é aberta com o painel Objetos selecionado.
Fazer upload do arquivo dump para o bucket
Faça upload para o bucket do arquivo dump SQL de amostra que você baixou anteriormente.
- Na guia Objetos, clique em Fazer upload e em Fazer upload de arquivos.
- Navegue até o arquivo
countries-postgres.sqle selecione-o. - Clique em Abrir. O Cloud Storage faz upload do arquivo dump para o bucket.
Criar uma instância do Cloud SQL
Crie uma instância do Cloud SQL no Google Cloud console usando as configurações a seguir. Para todas as outras configurações, mantenha o padrão. Embora não seja necessário ativar o IP particular para o processo de importação, usar o IP particular para uma carga de trabalho de produção é uma prática recomendada.
- Acesse a página "Instâncias do Cloud SQL" no Google Cloud console.
Acessar a página "Instâncias" do Cloud SQL - Clique em Criar instância.
- Clique em Escolher PostgreSQL.
- Em Escolher uma edição do Cloud SQL, selecione Enterprise.
- Em Predefinição de edição, selecione Sandbox.
- Em ID da instância, insira
tutorial-instance. - Escolha e insira uma senha para a conta de usuário padrão e salve-a para uso futuro.
- Escolha a mesma região que você selecionou para sua sub-rede e bucket.
- Em Disponibilidade por zona, selecione Zona única.
- Expanda Mostrar opções de configuração.
- Expanda Conexões.
- Desmarque IP público.
- Selecione IP privado.
- No menu suspenso Rede, selecione tutorial-network. Isso coloca a nova instância do Cloud SQL na rede particular que você criou anteriormente.
- Clique em Criar instância e aguarde até que a instância seja inicializada e inicie. O processo de inicialização pode levar mais de cinco minutos.
Adicionar um usuário
Antes de ler ou gravar em um banco de dados, é necessário criar um usuário de banco de dados diferente do usuário raiz.
- No menu de navegação SQL, clique em Usuários.
- Clique em Adicionar conta de usuário.
- No painel aberto, selecione Autenticação integrada.
- No campo Nome de usuário, digite
tutorial-user. - Insira uma senha para o novo usuário. Salve essa senha para uso futuro.
- Clique em Adicionar.
Criar um banco de dados de destino
O fluxo de trabalho de importação exige que você selecione um banco de dados de destino para importar. Portanto, é necessário criar um banco de dados vazio.
- No menu de navegação SQL, clique em Bancos de dados.
- Clique em Criar banco de dados.
- Em Nome do banco de dados , digite
countries. - Clique em Criar.
Importar do arquivo dump
Agora você pode importar o banco de dados countries usando o
countries-postgres.sql arquivo dump que você fez upload para o bucket do Cloud Storage.
- No menu de navegação SQL, clique em Visão geral.
- Na página de visão geral, clique em Importar.
- Em Formato do arquivo, selecione SQL.
- Em Selecionar arquivo de origem, escolha Selecionar arquivo do Google Cloud Storage.
- Clique em Procurar.
- Expanda o bucket de armazenamento que você criou anteriormente.
- Clique em countries-postgres.sql.
- Clique em Selecionar.
- Na seção Destino, clique no menu suspenso Banco de dados e selecione countries.
- Clique em Importar.
Quando o processo de importação for concluído e o banco de dados countries for importado para o Cloud SQL para PostgreSQL, uma mensagem de sucesso será exibida.
Validar os dados importados no Cloud SQL para PostgreSQL
Depois que a operação de importação for concluída, você poderá verificar se o banco de dados foi importado conectando-se a ele usando o Cloud SQL Studio, inspecionando a lista de tabelas e executando uma consulta de teste nos dados.
Autenticar no Cloud SQL Studio
Com a conta de usuário que você criou anteriormente, conecte-se ao novo banco de dados usando o Cloud SQL Studio.
- No menu de navegação SQL, clique em Cloud SQL Studio. Uma caixa de diálogo de login será exibida.
- No menu suspenso Banco de dados, escolha countries.
- Selecione Autenticação de banco de dados integrada.
- No menu suspenso Usuário, selecione tutorial-user.
- No campo Senha, insira a senha escolhida para o usuário em a seção Adicionar um usuário.
- Clique em Autenticar. O Cloud SQL Studio será aberto.
Visualizar e consultar as tabelas
- No painel Análises, examine o banco de dados
countriese confirme se ele tem duas tabelas:capitalsecountry_codes. - Clique em Consulta sem título para abrir o editor de consultas.
Cole o código a seguir no editor de consultas:
SELECT "capitals"."country_capital", "country_codes"."country_name" FROM "capitals" JOIN "country_codes" ON "capitals"."alpha_2_code" = "country_codes"."alpha_2_code" ORDER BY "capitals"."country_capital";Clique em Executar.
O painel de resultados mostra uma lista alfabética de capitais do mundo e seus países.
Liberar espaço
Para evitar cobranças na sua Google Cloud conta pelos recursos usados neste tutorial, faça uma das seguintes ações:
- Exclua o projeto que contém os recursos.
- Mantenha o projeto e exclua os recursos individuais.
Excluir o projeto
Excluir um Google Cloud projeto do:
gcloud projects delete PROJECT_ID
Excluir recursos individuais
Se você quiser manter o projeto, mas evitar cobranças, exclua a instância do Cloud SQL, o bucket do Cloud Storage e a rede VPC que você criou durante o tutorial.
Excluir a instância do Cloud SQL
Primeiro, desative a proteção contra exclusão e exclua a instância do Cloud SQL do tutorial:
- No menu de navegação SQL, clique em Visão geral.
- Clique em Editar.
- Expanda a seção Proteção de dados.
- Em Proteção contra exclusão de instâncias, desmarque todas as opções.
- Clique em Salvar. Quando a operação for concluída, a opção Excluir poderá ser selecionada.
- Clique em Excluir. Uma caixa de diálogo será exibida.
- No campo ID da instância, insira
tutorial-instance. - Clique em Excluir.
Excluir o bucket do Cloud Storage
Em seguida, exclua o bucket de armazenamento e o conteúdo dele.
- No menu de navegação principal doconsole Google Cloud , acesse Cloud Storage > Buckets.
- Marque a caixa ao lado do nome do bucket que você criou anteriormente.
- Clique em Excluir.
- Na caixa de diálogo, confirme a exclusão digitando
DELETEe clique em Excluir.
Excluir a rede VPC
Agora que você excluiu os recursos na sua rede VPC, está tudo pronto para excluir a rede. Antes de excluir a rede VPC, é necessário excluir a conexão de peering criada automaticamente quando você criou a rede VPC.
- No menu de navegação principal, acesse Redes VPC > Peering de rede VPC.
- Marque a caixa ao lado da conexão de peering com a rede VPC tutorial-network.
- Clique em Excluir.
- Na caixa de diálogo, confirme clicando em Excluir.
Agora que a conexão de peering foi removida, você pode excluir a rede VPC.
- No menu Rede VPC, clique em Redes VPC.
- Clique em tutorial-network para abrir a página de detalhes.
- Clique em Excluir rede VPC.
- Na caixa de diálogo, confirme a exclusão digitando
tutorial-networke clique em Excluir.
A seguir
- Práticas recomendadas para importação e exportação de dados.
- Exportar e importar usando arquivos dump SQL.
- Redes VPC
- Confira arquiteturas de referência, diagramas, tutoriais e práticas recomendadas do Google Cloud. Confira o Centro de arquitetura do Cloud.