Ligue-se a uma instância do Cloud SQL para MySQL com IP privado
Esta página mostra como criar e estabelecer ligação a uma instância do MySQL através de um IP privado. Os recursos criados neste início rápido custam normalmente menos de 1 euro, desde que conclua os passos, incluindo a limpeza, atempadamente.
Para seguir orientações passo a passo para esta tarefa diretamente na Google Cloud consola, clique em Orientar-me:
Antes de começar
- 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.
-
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 theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
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 theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Ative as APIs Google Cloud necessárias.
Consola
Na Google Cloud consola, aceda à página APIs.
Ative a API Admin do Cloud SQL. Ao ativar esta API, pode executar o proxy Auth do Cloud SQL.gcloud
Clique no botão seguinte para abrir o Cloud Shell, que oferece acesso à linha de comandos aos seus Google Cloud recursos diretamente a partir do navegador. Pode usar o Cloud Shell para executar os comandos
gcloud
apresentados ao longo deste início rápido.Execute o comando
gcloud services enable
da seguinte forma através da Cloud Shell para ativar as APIs necessárias para este início rápido:gcloud services enable sqladmin.googleapis.com
Este comando ativa as seguintes APIs:
- API Cloud SQL Admin. Ao ativar esta API, pode executar o proxy Auth do Cloud SQL.
Vista geral
Existem várias formas de estabelecer ligação a uma instância do Cloud SQL com um endereço IP privado, dependendo da localização da origem. O fator principal é que a máquina de origem tem de estar na mesma rede de VPC que a instância do Cloud SQL. Se a origem não estiver no Google Cloud mesmo Google Cloud projeto, tem de configurar a conetividade de forma diferente da que apresentamos aqui.
Neste início rápido, configuramos a conetividade através do caminho mais direto. A origem e o destino estão no mesmo Google Cloud projeto e na mesma rede de VPC. Criamos uma instância do Cloud SQL com um endereço IP privado (o destino) e uma VM do Compute Engine (a origem). Usamos a VM para instalar e usar as ferramentas necessárias para estabelecer ligação da VM à instância do Cloud SQL.
Realize as seguintes ações:
- Crie uma instância do Cloud SQL com um endereço IP privado.
Encontre e guarde o
connection name
da instância para utilização posterior. - Crie uma VM do Compute Engine.
- Abra duas ligações SSH à VM do Compute Engine.
Vai usar a primeira janela para instalar o mysql e instalar e iniciar o proxy Auth do Cloud SQL. Em seguida, vai usar a segunda janela para estabelecer ligação à instância do Cloud SQL estabelecendo ligação ao proxy Auth do Cloud SQL.
- Na janela de SSH n.º 1, faça o seguinte:
- Instale o cliente mysql.
- Instale o proxy Auth do Cloud SQL.
O proxy Auth do Cloud SQL funciona como um conetor entre o cliente mysql e a instância do Cloud SQL.
- Inicie o proxy Auth do Cloud SQL.
Se for bem-sucedido, o proxy Auth do Cloud SQL fica à escuta de pedidos de ligação.
- Na janela de SSH n.º 2, ligue-se à instância do Cloud SQL fazendo com que o cliente mysql se ligue ao proxy Auth do Cloud SQL.
Se tiver êxito, vê o comando mysql nesta janela e uma mensagem de ligação bem-sucedida na janela de SSH n.º 1, onde o proxy Auth do Cloud SQL está em execução.
- Limpar.
Crie uma instância do Cloud SQL com um endereço IP privado
-
Na Google Cloud consola, aceda à página Instâncias do Cloud SQL.
- Clique em Criar instância.
- Clique em Escolher MySQL.
- Se lhe for pedido que ative a API Compute, clique no botão Ativar API.
- Na secção Informações da instância, introduza um nome para o ID da instância.
- Introduza uma palavra-passe para o utilizador root. Tome nota da palavra-passe que criar, porque vai precisar dela mais tarde.
- Na secção Escolha a região e a disponibilidade zonal, selecione a opção Zona única.
- Expanda Mostrar opções de configuração.
- Expanda Ligações.
- Limpe o IP público.
- Selecione IP privado.
- No menu pendente Rede, selecione predefinição.
- Se estiver a usar um novo projeto, é apresentada a mensagem: Ligação de serviço privado necessária. Depois, siga estes passos:
- Clique em Configurar associação.
- Clique em Ativar API Service Networking.
- Na secção Atribua um intervalo de IPs, selecione Usar um intervalo de IPs atribuído automaticamente.
- Clique em Continuar.
- Clique em Criar associação e aguarde que a criação da associação seja concluída.
Clique em Criar instância.
Acede à página Vista geral da instância. Clique na nova instância veja os detalhes, incluindo o respetivo endereço IP privado.
Na secção Estabeleça ligação a esta instância, copie e guarde o Nome da ligação da instância. O connection name
está no formato
projectID:region:instanceID
.
Vai usar este connection name
mais tarde quando iniciar o proxy Auth do Cloud SQL.
Crie uma VM do Compute Engine
-
Na Google Cloud consola, aceda à página Instâncias de VM.
- Clique em Criar instância.
- Introduza um nome para a instância.
- Em Âmbitos de acesso, selecione Permitir acesso total a todas as APIs Cloud.
- Clique em Criar e aguarde que a criação da VM seja concluída.
Abra duas ligações SSH à VM do Compute Engine
Usamos duas janelas na VM. A primeira janela é usada para instalar o cliente mysql e o proxy Auth do Cloud SQL, obter o nome de ligação da instância e usar este nome para iniciar o proxy. A segunda janela é usada para estabelecer ligação à instância do Cloud SQL através do proxy.
- Expanda o menu SSH na coluna Ligar para a sua instância de VM do Compute Engine.
- Selecione Abrir na janela do navegador para abrir a janela SSH n.º 1.
Pode demorar alguns segundos até que o comando na janela fique disponível para si.
- Quando for apresentada a mensagem, introduza
pwd
para validar que está no diretório/home/$USER
.Nesta janela, vai instalar o cliente mysql e o proxy Auth do Cloud SQL, bem como iniciar o proxy Auth do Cloud SQL.
- Selecione novamente Abrir na janela do navegador para abrir a janela SSH n.º 2.
Vai usar esta janela para estabelecer ligação à sua instância do Cloud SQL.
Instale o cliente mysql
Use a janela de SSH n.º 1 para este passo.
Instale o cliente MySQL a partir do gestor de pacotes e pare o servidor mysqld
:
sudo apt-get update sudo apt-get install mariadb-client-10.6
Instale o proxy Auth do Cloud SQL
Use a janela de SSH n.º 1 para este passo.
- Instale
wget
:sudo apt-get install wget
- Transfira o proxy Auth do Cloud SQL:
wget https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.8.2/cloud-sql-proxy.linux.amd64 \ -O cloud-sql-proxy
- Torne o proxy Auth do Cloud SQL executável:
chmod +x cloud-sql-proxy
Inicie o proxy Auth do Cloud SQL
Use a janela de SSH n.º 1 para este passo.
Inicie o proxy Auth do Cloud SQL para poder monitorizar a respetiva saída. Substitua
INSTANCE_CONNECTION_NAME
pelo connection name
que copiou
quando criou a instância do Cloud SQL.
./cloud-sql-proxy --private-ip INSTANCE_CONNECTION_NAME
Quando o Proxy Auth do Cloud SQL é iniciado com êxito, é apresentada uma mensagem semelhante à seguinte na janela SSH:
Listening on 127.0.0.1:3306 for myInstance Ready for new connections
Estabeleça ligação à sua instância do Cloud SQL
Use a janela SSH n.º 2 para este passo.
Execute o seguinte comando:
mysql -u root -p --host 127.0.0.1 --port 3306
No comando Enter password:
, introduza a palavra-passe da sua conta de utilizador root do MySQL.
Verifique se é apresentado o comando do MySQL. Estabeleceu ligação à sua base de dados através do cliente mysql.
Regresse à janela do terminal onde iniciou o proxy Auth do Cloud SQL. Deve ver uma mensagem semelhante à seguinte:
New connection for myInstance
Limpar
Para evitar incorrer em cobranças na sua Google Cloud conta pelos recursos usados nesta página, siga estes passos.
-
Na Google Cloud consola, aceda à página Instâncias do Cloud SQL.
- Selecione a instância
myinstance
para abrir a página Detalhes da instância. - Na barra de ícones na parte superior da página, clique em Eliminar.
- Na janela Eliminar instância, escreva o nome da instância e, de seguida, clique em Eliminar.
Passos de limpeza opcionais
Se não estiver a usar as APIs que foram ativadas como parte deste início rápido, pode desativá-las.
- APIs ativadas neste guia de início rápido:
- API Cloud SQL Admin
Na Google Cloud consola, aceda à página APIs.
Selecione a API Admin do Cloud SQL e, de seguida, clique no botão Desativar API.
Na Google Cloud consola, aceda à página Instâncias de VM.
Selecione o nome da instância.
Selecione Eliminar no menu Mais ações.
O que se segue?
Com base nas suas necessidades, pode saber mais sobre como criar instâncias do Cloud SQL.
Também pode saber como criar utilizadores do MySQL e bases de dados para a sua instância do Cloud SQL.
Além disso, pode saber como estabelecer ligação a uma instância do Cloud SQL a partir de outras Google Cloud aplicações: