Puedes usar el cliente de línea de la comandos de PostgreSQL para conectarte a Cloud SQL. En esta página, se describe cómo conectar un cliente psql
a tu instancia de Cloud SQL, ya sea que se ejecute de forma local en una máquina cliente, en una VM de Compute Engine, o en Cloud Shell.
Antes de comenzar
Antes de usar un cliente psql
para conectarte a tu instancia de Cloud SQL, haz lo siguiente:
-
Crea una instancia de Cloud SQL y configura el usuario predeterminado.
Consulta Crea instancias y Establece la contraseña para la cuenta de usuario predeterminada.
De forma opcional, crea una instancia de VM de Compute Engine y, luego, conéctala a la instancia mediante SSH.
Consulta Crea e inicia una instancia de VM, Acerca de las conexiones SSH, o Conéctate a las VMs de Windows mediante RDP.
Decide cómo te conectarás a tu instancia.
Para obtener información acerca de las opciones de conexión y cómo elegir una de ellas, consulta la sección Acerca de las opciones de conexión.
Usa un cliente PostgreSQL en una máquina local o en una VM de Compute Engine
El uso de un cliente psql
para conectarte a tu instancia de Cloud SQL implica tres tareas de alto nivel:
- Instala el cliente.
- Configura el acceso a tu instancia de Cloud SQL.
- Conéctate a tu instancia de Cloud SQL.
Instala el cliente
Para instalar el cliente de psql
, haz lo siguiente:
Debian/Ubuntu
Instala el cliente psql desde el administrador de paquetes:
sudo apt-get update sudo apt-get install postgresql-client
CentOS/RHEL
Instala el cliente psql desde el administrador de paquetes:
sudo yum install postgresql
openSUSE
Instala el cliente psql desde el administrador de paquetes:
sudo zypper install postgresql
Otras plataformas
- Descarga la distribución principal de PostgreSQL para tu plataforma desde la página de descargas de PostgreSQL.
La distribución principal incluye el cliente psql. - Instala la base de datos de PostgreSQL y sigue las instrucciones en la página de descargas.
Configura el acceso a tu instancia de Cloud SQL
Para configurar el acceso a la instancia, haz lo siguiente:
- Desde la máquina cliente o la instancia de VM de Compute Engine, usa ¿Cuál es mi IP? para ver la dirección IP de la máquina cliente.
- Copia esa dirección IP.
-
En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.
- Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
- Selecciona Conexiones en el menú de navegación de SQL.
- Selecciona la pestaña Herramientas de redes.
- En la sección Redes autorizadas, haz clic en Agregar red y, luego, ingresa la dirección IP de la máquina en la que está instalado el cliente.
- Haz clic en Listo y, luego, en Guardar en la parte inferior de tu página para guardar los cambios.
- Conéctate a tu instancia, ya sea con SSL/TLS o sin encriptación (sin SSL/TLS).
Conéctate a tu instancia de Cloud SQL sin encriptación
Para que puedas conectarte sin encriptación, la instancia debe tener el modo SSL configurado como ALLOW_UNENCRYPTED_AND_ENCRYPTED
. En la consola de Google Cloud, la configuración equivalente es Permitir el tráfico de red sin encriptar.
Para obtener más información sobre la configuración SSL/TLS de tu instancia, consulta Configura certificados SSL/TLS.
Para conectarte a la instancia, sigue estos pasos:
- Confirma que instalaste el cliente y configuraste el acceso a tu instancia.
- Inicia el cliente
psql
:psql "sslmode=disable dbname=postgres user=postgres hostaddr=INSTANCE_IP_ADDRESS"
- Ingresa la contraseña.
- Aparecerá el mensaje de psql.
Conéctate a la instancia de Cloud SQL mediante certificados SSL/TLS.
Para conectarte a tu instancia con SSL/TLS y la autenticación integrada, sigue estos pasos:
- Inicia el cliente
psql
:psql "sslmode=require \ hostaddr=INSTANCE_IP_ADDRESS \ user=postgres dbname=DB_NAME"
Por ejemplo:
psql "sslmode=require \ hostaddr=203.12.34.56 \ user=postgres dbname=postgres"
Además, es posible que quieras crear un archivo de servicio de conexión para administrar tus parámetros de conexión, en especial si te conectas a más de una instancia. Para obtener más información, consulta la documentación de PostgreSQL.
- Ingresa la contraseña. La contraseña es obligatoria para Cloud SQL aunque PostgreSQL admite conectividad sin contraseña mientras se usa SSL/TLS.
- Puedes confirmar que la conexión está encriptada si buscas el cifrado en la información de la conexión:
SSL connection (cipher: ECDHE-RSA-AES128-GCM-SHA256, bits: 128)
Conéctate a la instancia de Cloud SQL mediante SSL/TLS y la verificación del certificado de cliente
Si ssl_mode
en tu instancia de Cloud SQL está configurado como TRUSTED_CLIENT_CERTIFICATE_REQUIRED
, también debes proporcionar una identidad de cliente verificada cuando accedas.
Para conectarte mediante certificados SSL/TLS con la verificación del cliente, necesitas lo siguiente:
- Un certificado de clave pública del cliente en un archivo client-cert.pem.
- Una clave privada del cliente en un archivo client-key.pem
Además, a fin de permitir que el cliente verifique la identidad del servidor para la autenticación mutua, especifica el certificado de servidor server-ca.pem.
Por ejemplo, para iniciar el clientepsql
, haz lo siguiente:
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"
Si no tienes un certificado de cliente y una clave privada correspondiente, crea un certificado de cliente nuevo.
Usa el cliente en Cloud Shell
Para conectarte a una instancia de Cloud SQL (solo IP pública), sigue estos pasos:
- Ve a la consola de Google Cloud.
Ve a la consola de Google Cloud.
- Haz clic en el ícono de Cloud Shell a la derecha de la barra de herramientas.
Cloud Shell tarda unos minutos en inicializarse.
- En el mensaje de Cloud Shell, usa el cliente incorporado para conectarte a tu instancia de Cloud SQL:
gcloud sql connect INSTANCE_ID \ --user=postgres
- Escribe la contraseña.
El comando gcloud sql connect
no admite la conexión a una instancia de Cloud SQL mediante una IP privada ni mediante SSL/TLS. Para conectarte con la encriptación, instala y usa el proxy en Cloud Shell:
- Instala el proxy (Linux de 64 bits) en el directorio
/home/USER
. - Inicia el proxy con la autenticación de la CLI de gcloud:
./cloud-sql-proxy INSTANCE_CONNECTION_NAME &
- Conéctate a la base de datos mediante la conexión TCP:
psql -U USERNAME --host=127.0.0.1
¿Qué sigue?
- Obtén más información sobre cómo configurar una instancia con una dirección IP privada.
- Obtén más información sobre las opciones para conectarte a una instancia desde tu aplicación.
- Obtén información sobre cómo funciona el cliente
psql
con SSL.
Pruébalo tú mismo
Si es la primera vez que usas Google Cloud, crea una cuenta para evaluar el rendimiento de Cloud SQL en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
Probar Cloud SQL gratis