Você pode usar o cliente de linha de comando do PostgreSQL para se conectar ao Cloud SQL. Esta página descreve como conectar um cliente psql
à sua instância do Cloud SQL, seja ela executada localmente na máquina cliente, em uma VM do Compute Engine ou no Cloud Shell.
Antes de começar
Antes de usar um cliente psql
para se conectar à sua instância do Cloud SQL, faça o seguinte:
Crie uma instância do Cloud SQL, incluindo a configuração do usuário padrão.
Consulte Criar instâncias e Definir a senha para a conta de usuário padrão .
Opcionalmente, crie uma instância de VM do Compute Engine e conecte-se a ela usando SSH.
Consulte Criar e iniciar uma instância de VM , Sobre conexões SSH ou Conectar-se a VMs do Windows usando RDP .
Determine como você se conectará à sua instância.
Para saber as opções de conexão e como escolher entre elas, consulte Sobre as opções de conexão .
Use um cliente PostgreSQL em uma máquina local ou em uma VM do Compute Engine
Usar um cliente psql
para se conectar à sua instância do Cloud SQL envolve três tarefas de alto nível:
- Instale o cliente .
- Configure o acesso à sua instância do Cloud SQL .
- Conecte-se à sua instância do Cloud SQL .
Instalar o cliente
Para instalar o cliente psql
, faça o seguinte:
Debian/Ubuntu
Instale o cliente psql a partir do gerenciador de pacotes:
sudo apt-get update sudo apt-get install postgresql-client
CentOS/RHEL
Instale o cliente psql a partir do gerenciador de pacotes:
sudo yum install postgresql
openSUSE
Instale o cliente psql a partir do gerenciador de pacotes:
sudo zypper install postgresql
Outras plataformas
- Baixe a distribuição principal do PostgreSQL para sua plataforma na página de downloads do PostgreSQL .
A distribuição principal inclui o cliente psql. - Instale o banco de dados PostgreSQL seguindo as instruções na página de download.
Configurar o acesso à sua instância do Cloud SQL
Para configurar o acesso à sua instância, faça o seguinte:
- Na máquina cliente ou na instância de VM do Compute Engine, use Qual é meu IP para ver o endereço IP da máquina cliente.
- Copie esse endereço IP.
No Google Cloud console, acesse a página Instâncias do Cloud SQL .
- Para abrir a página Visão geral de uma instância, clique no nome da instância.
- Selecione Conexões no menu de navegação SQL.
- Selecione a aba Rede .
- Na seção Redes autorizadas , clique em Adicionar rede e insira o endereço IP da máquina onde o cliente está instalado.
- Clique em Concluído . Em seguida, clique em Salvar na parte inferior da página para salvar suas alterações.
- Conecte-se à sua instância usando SSL/TLS ou sem criptografia (sem usar SSL/TLS) .
Conecte-se à sua instância do Cloud SQL sem criptografia
Para permitir a conexão sem criptografia, a instância deve ter o modo SSL definido como ALLOW_UNENCRYPTED_AND_ENCRYPTED
. No Google Cloud console, a configuração equivalente é Permitir tráfego de rede não criptografado .
Para obter mais informações sobre a configuração SSL/TLS da sua instância, consulte Configurar certificados SSL/TLS .
Para se conectar à sua instância, faça o seguinte:
- Confirme se você instalou o cliente e configurou o acesso à sua instância .
- Inicie o cliente
psql
:psql "sslmode=disable dbname=postgres user=postgres hostaddr=INSTANCE_IP_ADDRESS"
- Digite sua senha.
- O prompt do psql aparece.
Conecte-se à sua instância do Cloud SQL usando SSL/TLS
Para se conectar à sua instância usando SSL/TLS e autenticação integrada:
- Inicie o cliente
psql
:psql "sslmode=require \ hostaddr=INSTANCE_IP_ADDRESS \ user=postgres dbname=DB_NAME"
Por exemplo:
psql "sslmode=require \ hostaddr=203.12.34.56 \ user=postgres dbname=postgres"
Você também pode criar um Arquivo de Serviço de Conexão para gerenciar seus parâmetros de conexão, especialmente se estiver se conectando a mais de uma instância. Para mais informações, consulte a documentação do PostgreSQL .
- Digite a senha. A senha é obrigatória para o Cloud SQL, embora o PostgreSQL suporte conectividade sem senha ao usar SSL/TLS.
- Você pode confirmar se a conexão está criptografada procurando a cifra nas informações de conexão:
SSL connection (cipher: ECDHE-RSA-AES128-GCM-SHA256, bits: 128)
Conecte-se à sua instância do Cloud SQL usando SSL/TLS e verificação de certificado de cliente
Se ssl_mode
na sua instância do Cloud SQL estiver configurado como TRUSTED_CLIENT_CERTIFICATE_REQUIRED
, você também deverá fornecer uma identidade de cliente verificada ao efetuar login.
Para conectar usando certificados SSL/TLS com verificação de cliente, você precisa do seguinte:
- Um certificado de chave pública do cliente em um arquivo client-cert.pem .
- Uma chave privada do cliente em um arquivo client-key.pem .
Além disso, para permitir que o cliente verifique a identidade do servidor para autenticação mútua, especifique o certificado do servidor server-ca.pem .
Por exemplo, para iniciar o clientepsql
:psql "sslmode=verify-ca sslrootcert=server-ca.pem \ sslcert=client-cert.pem sslkey=client-key.pem \ hostaddr=INSTANCE_IP_ADDRESS \ user=postgres dbname=DB_NAME"
Se você não tiver um certificado de cliente e uma chave privada correspondente, crie um novo certificado de cliente .
Usando o cliente no Cloud Shell
Para se conectar a uma instância do Cloud SQL (somente IP público):
- Vá para o Google Cloud console.
- Clique no ícone do Cloud Shell
para a direita na barra de ferramentas. O Cloud Shell leva alguns instantes para inicializar.
- No prompt do Cloud Shell, use o cliente integrado para se conectar à sua instância do Cloud SQL:
gcloud sql connect INSTANCE_ID \ --user=postgres
- Digite sua senha.
O comando gcloud sql connect
não oferece suporte à conexão com uma instância do Cloud SQL usando IP privado ou SSL/TLS. Para se conectar com criptografia, instale e use o proxy no Cloud Shell:
- Instale o proxy (Linux 64 bits) no diretório
/home/USER
. - Inicie o proxy usando a autenticação CLI do gcloud:
./cloud-sql-proxy INSTANCE_CONNECTION_NAME &
- Conecte-se ao banco de dados usando a conexão TCP:
psql -U USERNAME --host=127.0.0.1
O que vem a seguir
- Saiba mais sobre como configurar uma instância com um endereço IP privado .
- Saiba mais sobre as opções para se conectar à sua instância a partir do seu aplicativo .
- Aprenda como o cliente
psql
funciona com SSL .
Experimente você mesmo
Se você é novo no Google Cloud, crie uma conta para avaliar o desempenho do Cloud SQL em cenários reais. Novos clientes também ganham US$ 300 em créditos gratuitos para executar, testar e implantar cargas de trabalho.
Experimente o Cloud SQL gratuitamente