Conéctate con un cliente de base de datos

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 tu máquina cliente o en Cloud Shell.

¿Necesitas ayuda? Para solucionar problemas del proxy, consulta Cómo solucionar problemas de conexión del proxy de Cloud SQL. También puedes consultar nuestra página de asistencia de Cloud SQL.

Antes de comenzar

Antes de comenzar a usar un cliente, debes hacer lo siguiente:

Usa un cliente local

El uso de un cliente local para conectarte a tu instancia de Cloud SQL implica tres tareas de alto nivel:

  1. Instala el cliente.
  2. Configura el acceso a tu instancia de Cloud SQL.
  3. Conéctate a tu instancia de Cloud SQL.

Instala el cliente

Para instalar el cliente, sigue estos pasos:

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

  1. 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.
  2. 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:

  1. Desde la máquina cliente, usa ¿Cuál es mi IP? para ver la dirección IP de esta.
  2. Copia esa dirección IP.
  3. Ve a la página Instancias de Cloud SQL en Google Cloud Console.

    Ir a la página Instancias de Cloud SQL

  4. Haz clic en la instancia para abrir su página de Descripción general y registrar su dirección IP.
  5. Selecciona la pestaña Conexiones.
  6. En 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.
  7. Haz clic en Listo y, luego, en Guardar en la parte inferior de tu página para guardar los cambios.
  8. Conéctate a tu instancia, ya sea con SSL o sin SSL.

Conéctate a tu instancia de Cloud SQL sin encriptación

Para conectarte a la instancia, sigue estos pasos:

  1. Confirma que instalaste el cliente y configuraste el acceso a tu instancia.
  2. Inicia el cliente psql:
    psql "sslmode=disable dbname=postgres user=postgres hostaddr=[INSTANCE_IP]"
    
  3. Escribe la contraseña.
  4. Aparecerá el mensaje de psql.

Conéctate a tu instancia de Cloud SQL con SSL

Para conectarte mediante SSL, necesitas lo siguiente:

  • Un certificado de autoridad certificada (CA) en un archivo server-ca.pem.
  • 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

Si te falta un certificado de cliente y una clave privada correspondiente, crea un certificado de cliente nuevo.

Antes de comenzar, confirma que instalaste el cliente y configuraste el acceso a tu instancia.

Para conectarte a tu instancia mediante SSL, haz lo siguiente:

  1. Inicia el cliente psql:
    psql "sslmode=verify-ca sslrootcert=server-ca.pem \
          sslcert=client-cert.pem sslkey=client-key.pem \
          hostaddr=[INSTANCE_IP] \
          user=postgres dbname=[DB_NAME]"
    

    Por ejemplo:

    psql "sslmode=verify-ca sslrootcert=server-ca.pem \
          sslcert=client-cert.pem sslkey=client-key.pem \
          hostaddr=01.23.45.67 \
          user=postgres dbname=postgres"
    

    No se requiere un modo SSL de verify-full. verify-ca es suficiente porque la CA es específica de la instancia.

    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.

  2. Ingresa la contraseña.
  3. 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)
    

Usa el cliente en Cloud Shell

Para conectarte a una instancia de Cloud SQL, sigue estos pasos:

  1. Ve a Google Cloud Console:

    Ir a Google Cloud Console.

  2. Haz clic en el ícono de Cloud Shell a la derecha de la barra de herramientas.

    Cloud Shell tarda unos minutos en inicializarse.

  3. 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
    
  4. Escribe la contraseña.

El comando gcloud sql connect no admite la conexión a una instancia de Cloud SQL mediante SSL/TLS. Para conectarte con la encriptación, instala y usa el proxy en Cloud Shell:

  1. Instala el proxy (Linux de 64 bits) en el directorio /home/USER.
  2. Inicia el proxy con la autenticación del SDK de Cloud:

    ./cloud_sql_proxy -instances=INSTANCE_CONNECTION_NAME=tcp:3306 &

  3. Conéctate a la base de datos mediante la conexión TCP:

    psql -u USERNAME -p --host 127.0.0.1

¿Qué sigue?