Elige cómo conectarte a Cloud SQL

En esta página, se proporciona una descripción general de las formas en que puedes conectarte a tu instancia de Cloud SQL.

Antes de conectarte a una instancia de Cloud SQL, debes decidir cómo implementar y configurar tu instancia de Cloud SQL y los recursos de red de respaldo. Si tu instancia de Cloud SQL ya está configurada y se implementó, esta página puede ayudarte a comprender las diferentes formas en que puedes conectar tus clientes a la instancia existente.

Tipo de dirección IP: privada o pública

Cuando creas tu instancia de Cloud SQL por primera vez, puedes elegir si deseas configurarla con una dirección IP pública, una dirección IP privada o una combinación de ambas.

Elige la configuración de la dirección IP de tu instancia según los requisitos de tu aplicación. Luego, después de configurar la instancia, especificas una dirección IP pública, una dirección IP privada o, en algunos casos, un nombre de DNS en la cadena de conexión del cliente.

Dirección IP privada Dirección IP pública
Descripción Dirección IP interna, solo de red de nube privada virtual (VPC) (privada) Una dirección IP externa (pública) a la que se puede acceder desde Internet
Puntos de decisión

¿Necesitas conectarte desde clientes alojados en redes de VPC dentro de Google Cloud o desde clientes que tienen acceso a esas redes de VPC?

Si es así, elige una dirección IP privada para la instancia.

¿Necesitas conectarte desde clientes fuera de la red de VPC de Google Cloud a través de la Internet pública?

Si es así, elige una dirección IP pública para la instancia.

Opciones de configuración

Se admiten los siguientes tipos de parámetros de configuración de redes privadas:

  • Private Service Connect: Conéctate a instancias de Cloud SQL desde varias redes de VPC que pertenezcan a diferentes grupos, proyectos u organizaciones. Private Service Connect es la opción de conectividad de IP privada predeterminada para los proyectos nuevos.
  • Acceso privado a servicios: Conéctate a instancias de Cloud SQL desde una sola red de VPC basada en el intercambio de tráfico entre redes de VPC.
  • Para obtener más información sobre cómo elegir una configuración de red privada, consulta Opciones de configuración de IP privada.

Cuando te conectas directamente a una instancia con una dirección IP pública, debes configurar redes autorizadas.

Otra alternativa más segura para conectarse a una instancia de Cloud SQL que usa una IP pública es usar un conector de Cloud SQL (como el proxy de autenticación de Cloud SQL o uno de los conectores de lenguajes de Cloud SQL).

Para obtener instrucciones sobre cómo agregar una IP pública a tu instancia, consulta Configura IP públicas.

Para conectarte a una instancia de Cloud SQL con una dirección IP pública, puedes usar el cliente de mysql o cualquier otro cliente disponible.

Resumen

Recomendación: Para mejorar la seguridad, te recomendamos que configures tu instancia con un tipo de dirección IP privada, a menos que tengas requisitos específicos para una instancia de Cloud SQL accesible desde Internet o si te conectas desde un cliente que no cumple con los requisitos de una VPC.

Tipo de conexión: conector de Cloud SQL o directa

Cuando estableces la conexión a una instancia de Cloud SQL, puedes usar un conector de Cloud SQL o establecer una conexión directa.

Un conector de Cloud SQL es el proxy de autenticación de Cloud SQL o uno de los conectores de lenguaje de Cloud SQL.

Conector de Cloud SQL Conexión directa
Descripción El proxy de autenticación de Cloud SQL, un proxy del cliente, y los conectores de lenguaje de Cloud SQL, bibliotecas del cliente, proporcionan acceso simplificado y seguro a tus instancias de Cloud SQL, en especial cuando te conectas a una instancia con una dirección IP pública. Una conexión directa de un cliente a una instancia de Cloud SQL proporciona una conexión de menor latencia. Se puede establecer una conexión directa desde una dirección IP pública o privada.
Puntos de decisión

Los conectores de Cloud SQL son beneficiosos en las siguientes situaciones:

  • Cuando quieras conectarte a una instancia de Cloud SQL con una dirección IP pública sin tener que configurar redes autorizadas.
  • Cuando quieras encriptar el tráfico hacia y desde la base de datos de forma automática con la verificación de identidad del servidor y del cliente sin tener que administrar certificados SSL.
  • Cuando usas la autenticación de la base de datos de IAM y quieres actualizar tus tokens de acceso de OAuth 2.0 automáticamente.
  • Cuando te conectas desde un cliente o una aplicación que usa una dirección IP efímera o asignada de forma dinámica. La configuración de IP dinámica puede ser común para las aplicaciones de plataforma como servicio (PaaS).

El uso de una conexión directa proporciona los siguientes beneficios:

  • Menor latencia en comparación con las conexiones que usan conectores de Cloud SQL.
  • No hay dependencia de paquetes o bibliotecas adicionales, a diferencia de los conectores de Cloud SQL.
  • Cuando usas una conexión directa, eres responsable de establecer la configuración de SSL/TLS.
Opciones de configuración

Para configurar certificados SSL/TLS en la instancia de Cloud SQL y para tu cliente, haz lo siguiente:

  1. Elige un modo de AC del servidor para tu instancia.
  2. Configura tu instancia para aplicar la encriptación SSL/TLS en las conexiones de la instancia.
  3. Crea certificados de cliente.
  4. Descarga los certificados de cliente y servidor.
Resumen

Cuando te conectas a una instancia de Cloud SQL, puedes usar un conector de Cloud SQL o conectarte directamente desde los clientes.

Recomendación general: Si te conectas a una instancia con una dirección IP privada, usa una conexión directa. También te recomendamos que apliques SSL y configures certificados SSL/TLS para tu conexión.

Si te conectas a una instancia con una dirección IP pública, usa un conector de Cloud SQL (ya sea el proxy de autenticación de Cloud SQL o uno de los conectores de lenguaje de Cloud SQL).

Tipo de autenticación de la base de datos: IAM o integrada

Cuando te conectas a una instancia, debes autenticarte como usuario de la base de datos. Puedes elegir entre la autenticación integrada o la autenticación de la base de datos de IAM.

Autenticación de la base de datos de IAM Autenticación integrada
Descripción La autenticación de la base de datos de IAM te permite autenticarte en las bases de datos con cuentas de servicio y de usuario de IAM de Google Cloud a través de tokens de acceso de corta duración en lugar de contraseñas. Puedes administrar los privilegios de la base de datos con principales de IAM, como usuarios, cuentas de servicio y grupos. La autenticación integrada usa nombres de usuario y contraseñas locales de la base de datos para autenticar a los usuarios de la base de datos.
Puntos de decisión ¿Prefieres centralizar la administración de usuarios en los servicios de Google Cloud con IAM en Google Cloud? Si es así, usa la autenticación de la base de datos de IAM. ¿Tienes aplicaciones o flujos de trabajo que dependan de la autenticación de bases de datos integrada? Si es así, usa la autenticación integrada.
Opciones de configuración

Puedes usar la autenticación de la base de datos de IAM para usuarios individuales de IAM, cuentas de servicio individuales y grupos. Para obtener más información, consulta Administra usuarios con la autenticación de la base de datos de IAM .

Si usas un conector de Cloud SQL, este controla la actualización automática de los tokens de acceso de IAM. Para obtener más información, consulta Autenticación automática de la base de datos de IAM.

Puedes usar la autenticación de base de datos integrada y configurar políticas de contraseñas a nivel de instancia y de usuario. Para obtener más información, consulta Autenticación integrada.
Resumen Recomendación: A menos que tengas aplicaciones o flujos de trabajo que dependan de la autenticación de la base de datos integrada, usa la autenticación de la base de datos de IAM siempre que sea posible.

Quita las opciones de red de una instancia

Cloud SQL admite la eliminación de las siguientes opciones de redes de una instancia:

  • IP pública de una instancia con acceso privado a servicios y una IP pública
  • IP pública de una instancia con IP pública, acceso privado a servicios y Private Service Connect
  • Private Service Connect desde una instancia con Private Service Connect y acceso privado a servicios
  • Private Service Connect desde una instancia con Private Service Connect, acceso privado a servicios y una IP pública

Habilita las opciones de redes para una instancia

Cloud SQL admite la habilitación de las siguientes opciones de conexión para las instancias:

  • Acceso privado a servicios en una instancia con solo IP pública
  • Private Service Connect en una instancia con acceso solo a servicios privados
  • Private Service Connect en una instancia con acceso privado a servicios y una IP pública
  • IP pública en una instancia con acceso solo a servicios privados

Limitaciones

  • No puedes crear una instancia con una dirección IP pública y Private Service Connect.
  • No puedes quitar el acceso privado a servicios de una instancia con acceso privado a servicios y Private Service Connect.
  • No puedes quitar el acceso privado a servicios de una instancia con acceso privado a servicios y una IP pública.
  • Si tienes una instancia que solo usa una IP pública, no puedes habilitar el acceso privado a servicios y Private Service Connect al mismo tiempo. Primero, habilita el acceso privado a servicios y, luego, Private Service Connect.
  • No puedes usar redes autorizadas para crear listas de entidades permitidas basadas en direcciones IP para instancias de Private Service Connect.

Herramientas para conectarse a Cloud SQL

En la siguiente tabla, se muestran algunas opciones para conectarse a Cloud SQL:

Opción de conexión Más información
Proxy de autenticación de Cloud SQL
gcloud CLI
Conectores de lenguaje de Cloud SQL
Cloud Shell
Apps Script
Cloud Code
Google Cloud Data Agent Kit
Conéctate con herramientas de administración de bases de datos de terceros
MySQL Workbench
Toad para MySQL
SQuirreL SQL
phpMyAdmin

Solucionar problemas

Si tienes problemas de conexión, revisa las siguientes páginas para obtener ayuda con la depuración o la solución de problemas conocidos:

¿Qué sigue?