Criar uma instância em uma rede particular e importar um banco de dados

A migração de uma carga de trabalho de outra plataforma para o Cloud SQL for SQL Server geralmente envolve o uso do console Google Cloud para importar dados de um arquivo dump SQL que você exportou do seu ambiente anterior.

Neste tutorial, mostramos como criar os recursos Google Cloud de que você precisa e importar um banco de dados SQL para uma instância do Cloud SQL para SQL Server. O tutorial demonstra as práticas recomendadas ao migrar para o Cloud SQL para SQL Server, incluindo o uso de uma rede de nuvem privada virtual (VPC) com acesso a serviços particulares e a ativação de IP particular para sua 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

  1. Baixe um arquivo dump SQL de exemplo.
  2. Crie uma rede de nuvem privada virtual com acesso a serviços particulares.
  3. Crie um bucket do Cloud Storage e faça upload de um arquivo dump SQL nele.
  4. Crie uma instância do Cloud SQL para SQL Server configurada para IP particular.
  5. Crie um banco de dados de destino.
  6. Importe do arquivo dump para um novo banco de dados.
  7. Verifique se o banco de dados foi importado com sucesso visualizando 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 sua projeção de uso, utilize a calculadora de preços.

Novos usuários do Google Cloud podem estar qualificados para um teste sem custo financeiro.

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

  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 role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Se este guia estiver usando um projeto atual, verifique se você tem as permissões necessárias para concluir o guia. Se você criou um projeto, já tem as permissões necessárias.

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

  5. 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 the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  6. 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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  7. Se este guia estiver usando um projeto atual, verifique se você tem as permissões necessárias para concluir o guia. Se você criou um projeto, já tem as permissões necessárias.

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

  9. 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 the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  10. Funções exigidas

    Para conseguir as permissões necessárias a fim de concluir o tutorial, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto:

    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 papéis personalizados ou outros papéis predefinidos.

    Extrair 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.

    Faça o download do arquivo SQL para o banco de dados countries no seu ambiente local: countries-sqlserver.sql.

    Criar uma rede com acesso privado a serviços

    Antes de criar o restante dos recursos, crie uma rede VPC para executar seus serviços. Com o acesso a serviços particulares, é possível restringir o acesso ao banco de dados do Cloud SQL estabelecendo uma conexão particular entre sua rede externa e o Cloud SQL para SQL Server usando endereços IPv4 internos.

    1. No console do Google Cloud , acesse a página Redes VPC.

      Acessar a página "Redes VPC"

    2. Clique em Criar rede VPC.

    3. No campo do nome, digite tutorial-network.

    4. Em Modo de criação da sub-rede, selecione Personalizado.

    5. No campo do nome, digite tutorial-subnet.

    6. Selecione uma região perto de você.

    7. Em Intervalo IPv4, insira 10.0.0.0/24.

    8. Em Acesso privado do Google, selecione Ativado.

    9. Clique em Concluído.

    10. Na parte de baixo da página, clique em Criar.

    Depois que o processo de criação da rede VPC for concluído, você poderá configurar o acesso a serviços particulares para a rede.

    1. Na tela de redes VPC, clique em tutorial-network.
    2. Na barra de menu de tutorial-network, clique em Acesso a serviços particulares.
    3. Clique em Intervalos de IP alocados para serviços.
    4. Clique em Alocar intervalo de IP.
    5. Em Nome, insira tutorial-range.
    6. Em Intervalo de endereços IP, selecione Personalizado.
    7. No campo Intervalo, insira 192.168.0.0/20.
    8. Clique em Alocar.
    9. No submenu, clique em Conexões particulares com os serviços.
    10. Clique em Criar conexão.
    11. No menu suspenso Alocação atribuída, selecione tutorial-range.
    12. Clique em Conectar. Em um ou dois minutos, o console do Google Cloud 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.

    1. No console do Google Cloud , acesse a página Buckets do Cloud Storage.

      Acessar buckets

    2. Clique em Criar.
    3. Para o nome do bucket, crie um nome globalmente exclusivo composto de 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.
    4. Clique em Continuar.
    5. Em Tipo de local, selecione Região. Essa é a opção de menor custo.
    6. Escolha a mesma região da sub-rede. Localizar seus recursosGoogle Cloud na mesma região reduz a latência, melhora a velocidade, diminui os custos de transferência de dados e simplifica a rede.
    7. Clique em Continuar.
    8. Clique em Criar.
    9. Se uma caixa de diálogo aparecer, 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.

    Faça upload do arquivo dump para o bucket

    Faça upload para o bucket do arquivo dump SQL de exemplo que você baixou antes.

    1. Na guia Objetos, clique em Fazer upload e depois em Fazer upload de arquivos.
    2. Navegue até o arquivo countries-sqlserver.sql e selecione-o.
    3. Clique em Abrir. O Cloud Storage faz upload do arquivo dump para o bucket.

    crie uma instância do Cloud SQL

    Crie uma instância do Cloud SQL no console Google Cloud usando as seguintes configurações. 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, é recomendável usar esse tipo de IP para uma carga de trabalho de produção.

    1. Acesse a página "Instâncias do Cloud SQL" no Google Cloud console.
      Acessar a página "Instâncias" do Cloud SQL
    2. Clique em Criar instância.
    3. Clique em Escolher SQL Server.
    4. Em Escolher uma edição do Cloud SQL, selecione Enterprise.
    5. Em Predefinição de edição, selecione Sandbox.
    6. Em ID da instância, insira tutorial-instance.
    7. Escolha e digite uma senha para a conta de usuário padrão e salve-a para uso futuro.
    8. Escolha a mesma região que você escolheu para a sub-rede e o bucket.
    9. Em Disponibilidade por zona, selecione Zona única.
    10. Expanda Mostrar opções de configuração.
    11. Expanda Conexões.
    12. Desmarque IP público.
    13. Selecione IP privado.
    14. No menu suspenso Rede, selecione tutorial-network. Isso coloca a nova instância do Cloud SQL na rede particular que você criou anteriormente.
    15. Clique em Criar instância e aguarde até que a instância seja inicializada e iniciada. O processo de inicialização pode levar mais de cinco minutos.

    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, então é necessário criar um banco de dados vazio.

    1. No menu de navegação do SQL, clique em Bancos de dados.
    2. Clique em Criar banco de dados.
    3. Em Nome do banco de dados, digite countries.
    4. Clique em Criar.

    Importar do arquivo dump

    Agora você pode importar o banco de dados countries usando o arquivo dump countries-sqlserver.sql que você enviou para o bucket do Cloud Storage.

    1. No menu de navegação do SQL, clique em Visão geral.
    2. Na página de visão geral, clique em Importar.
    3. Em Formato de arquivo, selecione SQL.
    4. Em Selecionar arquivo de origem, escolha Selecionar arquivo do Google Cloud Storage.
    5. Clique em Procurar.
    6. Expanda o bucket de armazenamento que você criou anteriormente.
    7. Clique em countries-sqlserver.sql.
    8. Clique em Selecionar.
    9. Na seção Destino, clique no menu suspenso Banco de dados e selecione países.
    10. Clique em Importar.

    Quando o processo de importação for concluído e o banco de dados countries tiver sido importado para o Cloud SQL para SQL Server, uma mensagem de sucesso será exibida.

    Validar os dados importados no Cloud SQL para SQL Server

    Depois que a operação de importação for concluída, conecte-se ao banco de dados usando o Cloud SQL Studio, inspecione a lista de tabelas e execute uma consulta de teste nos dados para verificar se a importação foi feita.

    Autenticar no Cloud SQL Studio

    Com a conta de usuário que você criou antes, conecte-se ao novo banco de dados usando o Cloud SQL Studio.

    1. No menu de navegação do SQL, clique em Cloud SQL Studio. Uma caixa de diálogo de login vai aparecer.
    2. No menu suspenso Banco de dados, escolha countries.
    3. Selecione Autenticação de banco de dados integrada.
    4. No menu suspenso Usuário, selecione sqlserver.
    5. No campo Senha, digite a senha especificada ao criar a instância.
    6. Clique em Autenticar. O Cloud SQL Studio é aberto.

    Ver e consultar as tabelas

    1. No painel Explorer, examine o banco de dados countries e confirme se ele tem duas tabelas: capitals e country_codes.
    2. Clique em Consulta sem título para abrir o editor de consultas.
    3. Cole o seguinte código 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];
      
    4. Clique em Executar.

    O painel de resultados mostra uma lista alfabética de capitais do mundo e seus países.

    Limpar

    Para evitar cobranças na sua conta do Google Cloud pelos recursos usados neste tutorial, faça o seguinte:

    • Excluir o projeto que contém os recursos
    • Mantenha o projeto e exclua os recursos individuais.

    Excluir o projeto

    1. In the Google Cloud console, go to the Manage resources page.

      Go to Manage resources

    2. In the project list, select the project that you want to delete, and then click Delete.
    3. In the dialog, type the project ID, and then click Shut down to delete the project.

    Excluir recursos individuais

    Se quiser manter o projeto, mas evitar cobranças, exclua a instância do Cloud SQL, o bucket do Cloud Storage e a rede VPC criados durante o tutorial.

    Excluir a instância do Cloud SQL

    Primeiro, desative a proteção contra exclusão e depois exclua a instância do Cloud SQL do tutorial:

    1. No menu de navegação do SQL, clique em Visão geral.
    2. Clique em Editar.
    3. Expanda a seção Proteção de dados.
    4. Em Proteção contra exclusão de instâncias, desmarque todas as opções.
    5. Clique em Salvar. Quando a operação for concluída, a opção Excluir vai estar disponível.
    6. Clique em Excluir. Uma caixa de diálogo será exibida.
    7. No campo ID da instância, insira tutorial-instance.
    8. Clique em Excluir.

    Excluir o bucket do Cloud Storage

    Em seguida, exclua o bucket de armazenamento e o conteúdo dele.

    1. No menu de navegação principal do console Google Cloud , acesse Cloud Storage > Buckets.
    2. Marque a caixa ao lado do nome do bucket que você criou.
    3. Clique em Excluir.
    4. Na caixa de diálogo, confirme a exclusão digitando DELETE e clique em Excluir.

    Excluir a rede VPC

    Agora que você excluiu os recursos na sua rede VPC, é possível 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.

    1. No menu de navegação principal, acesse Redes VPC > Peering de rede VPC.
    2. Marque a caixa ao lado da conexão de peering com a rede VPC tutorial-network.
    3. Clique em Excluir.
    4. Na caixa de diálogo, clique em Excluir para confirmar.

    Agora que a conexão de peering foi removida, você pode excluir a rede VPC.

    1. No menu Rede VPC, clique em Redes VPC.
    2. Clique em tutorial-network para abrir a página de detalhes.
    3. Clique em Excluir rede VPC.
    4. Na caixa de diálogo, confirme a exclusão digitando tutorial-network e clique em Excluir.

    A seguir