Conectar-se a uma instância do Cloud SQL para MySQL com IP particular

Nesta página, mostramos como criar e se conectar a uma instância do MySQL usando um IP privado. Os recursos criados neste guia de início rápido normalmente custam menos do que um dólar, supondo que você conclua as etapas, incluindo a limpeza, em tempo hábil.


Para seguir as instruções detalhadas desta tarefa diretamente no console do Google Cloud, clique em Orientação:

Orientações


Antes de começar

  1. Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  3. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  4. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  5. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  6. Ative as APIs do Google Cloud necessárias.

    Console

    No console do Google Cloud, acesse a página APIs.

    Acesse APIs

    Ative a API Cloud SQL Admin. Ao ativar essa API, é possível executar o proxy do Cloud SQL Auth.

    gcloud

    Clique no botão a seguir para abrir o Cloud Shell, que fornece acesso de linha de comando aos recursos do Google Cloud diretamente no navegador. O Cloud Shell pode ser usado para executar os comandos gcloud apresentados neste guia de início rápido.

    Abra o Cloud Shell

    Execute o comando gcloud services enable da seguinte maneira usando o Cloud Shell para ativar as APIs necessárias para este guia de início rápido:

    gcloud services enable sqladmin.googleapis.com

    Esse comando ativa as seguintes APIs:

    • API Cloud SQL Admin. Ao ativar essa API, é possível executar o proxy do Cloud SQL Auth.

Informações gerais

Há muitas maneiras de se conectar a uma instância do Cloud SQL com um endereço IP particular, dependendo de onde a origem está localizada. O principal fator é que a máquina de origem precisa estar na mesma rede VPC que a instância do Cloud SQL. Se a origem não estiver no Google Cloud ou no mesmo projeto do Google Cloud, será necessário configurar a conectividade de maneira diferente da mostrada aqui.

Neste guia de início rápido, configuramos a conectividade pelo caminho mais direto. A origem e o destino estão no mesmo projeto do Google Cloud e na mesma rede VPC. Criamos uma instância do Cloud SQL com um endereço IP particular (o destino) e uma VM do Compute Engine (a origem). Usamos a VM para instalar e usar as ferramentas necessárias para se conectar da VM à instância do Cloud SQL.

Execute estas ações:

  1. Crie um banco de dados do Cloud SQL com um endereço IP particular.

    Encontre e salve o connection name da instância para uso posterior.

  2. Crie uma VM do Compute Engine.
  3. Abra duas conexões SSH com a VM do Compute Engine.

    Você usará a primeira janela para instalar o mysql e instalar e iniciar o proxy do Cloud SQL Auth. Depois, use a segunda janela para se conectar à instância do Cloud SQL conectando-se ao proxy do Cloud SQL Auth.

  4. Na janela SSH 1, faça o seguinte:
    1. Instale o cliente MySQL.
    2. Instalar o proxy do Cloud SQL Auth.

      O proxy do Cloud SQL Auth atua como um conector entre o cliente mysql e a instância do Cloud SQL.

    3. Inicie o proxy do Cloud SQL Auth.

      Se tudo der certo, o proxy do Cloud SQL Auth detectará solicitações de conexão.

  5. Na janela SSH 2, conecte-se à instância do Cloud SQL fazendo com que o cliente mysql se conecte ao proxy do Cloud SQL Auth.

    Se tudo der certo, você verá o prompt mysql nessa janela e uma mensagem de conexão na janela SSH 1, em que o proxy do Cloud SQL Auth estará em execução.

  6. Limpeza.

Criar uma instância do Cloud SQL com um endereço IP particular.

  1. No Console do Google Cloud, acesse a página Instâncias do Cloud SQL.

    Acesse "Instâncias do Cloud SQL"

  2. Clique em Criar instância.
  3. Clique em Escolher MySQL.
  4. Se você receber uma solicitação para ativar a API Compute, clique no botão Ativar API.
  5. Na seção Informações da instância, insira um nome para o ID da instância.
  6. Digite a senha do usuário raiz. Anote a senha criada porque você precisará dela mais tarde.
  7. Na seção Escolher região e disponibilidade por zona, selecione a opção Zona única.
  8. Expanda Mostrar opções de configuração.
  9. Expanda Conexões.
  10. Desmarque IP público.
  11. Selecione IP privado.
  12. Na menu suspenso Rede, selecione padrão.
  13. Se você estiver usando um novo projeto, a mensagem Conexão de serviço particular necessária será exibida. Em seguida:
    1. Clique em Configurar conexão.
    2. Clique em Ativar API Service Networking.
    3. Na seção Alocar um intervalo de IP, selecione Usar um intervalo de IP alocado automaticamente.
    4. Clique em Continuar.
    5. Clique em Criar conexão e aguarde a conclusão da criação da conexão.
  14. Clique em Criar instância.

A página "Visão geral" da instância será aberta. Clique na nova instância para visualizar os detalhes, incluindo o endereço IP privado.

Na seção Conectar-se a esta instância, copie e salve o Nome da conexão da instância. O connection name estará no formato projectID:region:instanceID.

Você usará este connection name mais tarde ao iniciar o proxy do Cloud SQL Auth.

Criar uma VM do Compute Engine

  1. No console do Google Cloud, acesse a página Instâncias de VMs.

    Acessar instâncias de VM

  2. Clique em Criar instância.
  3. Digite um Nome para a instância.
  4. Em Escopos de acesso, selecione Permitir acesso total a todas as APIs do Cloud.
  5. Clique em Criar e aguarde a conclusão da criação da VM.

Abra duas conexões SSH com a VM do Compute Engine

Duas janelas são usadas na VM. A primeira janela é usada para instalar o cliente mysql e o proxy do Cloud SQL Auth, conseguir o nome da conexão da instância e usar esse nome para iniciar o proxy. A segunda janela é usada para se conectar à instância do Cloud SQL pelo proxy.

  1. Expanda o menu SSH na coluna Conectar da instância de VM do Compute Engine.
  2. Selecione Abrir na janela do navegador para abrir a janela SSH 1.

    Pode levar alguns segundos para que o prompt na janela fique disponível para você.

  3. Quando solicitado, insira pwd para verificar se você está no diretório /home/$USER.

    Além de instalar o cliente mysql e o proxy do Cloud SQL Auth nesta janela, você iniciará o proxy do Cloud SQL Auth.

  4. Selecione Abrir na janela do navegador novamente para abrir a janela SSH 2.

    Você usará essa janela para se conectar à sua instância do Cloud SQL.

Instalar o cliente MySQL

Use a janela SSH 1 nesta etapa.

Instale o cliente MySQL pelo gerenciador de pacotes e interrompa o servidor mysqld:

sudo apt-get update
sudo apt-get install mariadb-client-10.6
  

Instalar o proxy do Cloud SQL Auth

Use a janela SSH 1 nesta etapa.

  1. Instale wget:
    sudo apt-get install wget
        
  2. Faça o download do proxy do Cloud SQL Auth:
    wget https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.8.2/cloud-sql-proxy.linux.amd64 \
    -O cloud-sql-proxy
      
  3. Torne o proxy do Cloud SQL Auth executável:
    chmod +x cloud-sql-proxy
      

Inicie o proxy do Cloud SQL Auth.

Use a janela SSH 1 nesta etapa.

Inicie o proxy do Cloud SQL Auth para poder monitorar a saída. Substitua INSTANCE_CONNECTION_NAME pelo connection name copiado ao criar a instância do Cloud SQL.

./cloud-sql-proxy --private-ip INSTANCE_CONNECTION_NAME

Quando o proxy do Cloud SQL Auth for iniciado, uma mensagem semelhante à seguinte será exibida na janela SSH:

Listening on 127.0.0.1:3306 for myInstance
Ready for new connections

Conectar-se à sua instância do Cloud SQL

Use a janela SSH 2 nesta etapa.

Execute este comando:

mysql -u root -p --host 127.0.0.1 --port 3306

No prompt Enter password:, insira a senha da sua conta de usuário raiz do MySQL.

Verifique se o prompt do MySQL é exibido. Você se conectou ao banco de dados usando o cliente mysql.

Volte para a janela do terminal em que você iniciou o proxy do Cloud SQL Auth. Você verá uma mensagem semelhante a esta:

New connection for myInstance

Limpar

Para evitar cobranças na conta do Google Cloud pelos recursos usados nesta página, siga estas etapas.

  1. No console do Google Cloud, acesse a página Instâncias do Cloud SQL.

    Acesse "Instâncias do Cloud SQL"

  2. Selecione a instância do myinstance para abrir a página Detalhes da instância.
  3. Na barra de ícones na parte superior da página, clique em Excluir.
  4. Na janela Excluir instância, digite o nome da instância e clique em Excluir.

Etapas de limpeza opcionais

Se você não estiver usando as APIs que foram ativadas como parte deste guia de início rápido, é possível desativá-las.

  • APIs que foram ativadas neste guia de início rápido:
    • API Cloud SQL Admin
  1. No console do Google Cloud, acesse a página APIs.

    Acesse APIs

  2. Selecione a API Cloud SQL Admin e clique no botão Desativar API.

  3. No console do Google Cloud, acesse a página Instâncias de VMs.

    Acessar instâncias de VM

  4. Selecione o nome da instância.

  5. Selecione Excluir no menu Mais ações.

A seguir

Com base nas suas necessidades, é possível saber mais sobre como criar instâncias do Cloud SQL.

Também é possível aprender sobre como criar usuários do MySQL e bancos de dados para sua instância do Cloud SQL.

Além disso, é possível aprender a se conectar a uma instância do Cloud SQL usando outros aplicativos do Google Cloud, como: