Conectarse mediante un cliente MySQL

Puedes usar el cliente de línea de comandos de MySQL para conectarte a Cloud SQL. En esta página se describe cómo conectar un cliente mysql a tu instancia de Cloud SQL, tanto si se ejecuta de forma local en la máquina del cliente como si lo hace en una VM de Compute Engine o en Cloud Shell.

Antes de empezar

Antes de poder usar un cliente mysql para conectarte a tu instancia de Cloud SQL, haz lo siguiente:

Usar un cliente MySQL en una máquina local o en una VM de Compute Engine

Para conectarte a tu instancia de Cloud SQL con un cliente mysql, debes llevar a cabo 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.

Instalar el cliente

Para instalar el cliente de mysql, haz lo siguiente:

  1. Descarga MySQL Community Server para tu plataforma desde la página de descarga de MySQL Community Server.
    Community Server incluye el cliente MySQL.
  2. Instala Community Server siguiendo las instrucciones de la página de descarga.

Para obtener más información sobre cómo instalar MySQL, consulta Instalar y actualizar MySQL.

Configurar el acceso a una instancia de Cloud SQL

Para configurar el acceso a tu instancia, haz lo siguiente:

  1. En la máquina cliente o en la instancia de VM de Compute Engine, usa Cuál es mi IP para ver la dirección IP de la máquina cliente.
  2. Copia esa dirección IP.
  3. En la Google Cloud consola, ve a la página Instancias de Cloud SQL.

    Ir a Instancias de Cloud SQL

  4. Para abrir la página Overview (Resumen) de una instancia, haz clic en su nombre.
  5. En el menú de navegación de SQL, selecciona Conexiones.
  6. Selecciona la pestaña Redes.
  7. En la sección Redes autorizadas, haz clic en Añadir red e introduce la dirección IP del equipo en el que está instalado el cliente.
  8. Haz clic en Listo. A continuación, haz clic en Guardar en la parte inferior de la página para guardar los cambios.
  9. Conéctate a tu instancia mediante SSL/TLS o sin cifrado (sin usar SSL/TLS).

Conectarse a una instancia de Cloud SQL sin cifrado

Para que puedas conectarte sin cifrado, la instancia debe tener el modo SSL definido como ALLOW_UNENCRYPTED_AND_ENCRYPTED. En la consola, la configuración equivalente es Permitir tráfico de red sin cifrar. Google Cloud

Para obtener más información sobre la configuración de SSL/TLS de tu instancia, consulta Configurar certificados SSL/TLS.

Para conectarte a tu instancia, haz lo siguiente:

  1. Confirma que has instalado el cliente y configurado el acceso a tu instancia.
  2. Inicia el cliente mysql:
    mysql --ssl-mode=DISABLED --host=INSTANCE_IP_ADDRESS --user=root --password
  3. Escribe tu contraseña.
  4. Aparecerá el mensaje de mysql.

Conectarse a una instancia de Cloud SQL mediante SSL/TLS

Para conectarte a tu instancia mediante SSL/TLS y la autenticación integrada, sigue estos pasos:

Antes de empezar, confirma que has instalado el cliente y configurado el acceso a tu instancia.

  1. Inicia el cliente mysql:
    mysql --ssl-mode=REQUIRED \
       --host=INSTANCE_IP_ADDRESS \
       --user=root --password
  2. Introduce la contraseña.
  3. En la petición de MySQL, introduce el comando \s para verificar que tu conexión usa SSL/TLS.
  4. Busca la línea de salida con SSL:.
    ...
    SSL:                     Cipher in use is DHE-RSA-AES256-SHA
    ...
    

    Para obtener información sobre cómo solucionar problemas de conexión, consulta Depurar problemas de conexión.

Conectarse a una instancia de Cloud SQL mediante SSL/TLS y verificación de certificados de cliente

Si ssl_mode en tu instancia de Cloud SQL está configurado como TRUSTED_CLIENT_CERTIFICATE_REQUIRED, debes proporcionar una identidad de cliente verificada al iniciar sesión.

Para conectarse mediante certificados SSL/TLS con verificación de cliente, necesita lo siguiente:

  • Un certificado de clave pública de cliente en un archivo client-cert.pem.
  • Una clave privada de cliente en un archivo client-key.pem.

Además, para que el cliente verifique la identidad del servidor en la autenticación mutua, especifica el certificado del servidor server-ca.pem.

Por ejemplo, para iniciar el cliente mysql:
    mysql --ssl-mode=VERIFY_CA \
      --ssl-ca=server-ca.pem \
      --ssl-cert=client-cert.pem \
      --ssl-key=client-key.pem \
      --host=INSTANCE_IP_ADDRESS \
      --user=root --password
   

Si no tienes un certificado de cliente y una clave privada correspondiente, crea un certificado de cliente.

Usar el cliente en Cloud Shell

Para conectarse a una instancia de Cloud SQL (solo IP pública):

  1. Ve a la Google Cloud consola.

    Ve a la Google Cloud consola.

  2. En la barra de herramientas, haz clic en el icono de Cloud Shell , situado en la parte derecha.

    Cloud Shell tarda unos instantes en inicializarse.

  3. En la petición de Cloud Shell, usa el cliente integrado para conectarte a tu instancia de Cloud SQL:
    gcloud sql connect INSTANCE_ID \
    --user=root
  4. Escribe tu 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 cifrado, 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 de gcloud CLI:

    ./cloud-sql-proxy INSTANCE_CONNECTION_NAME &

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

    mysql -u USERNAME -p --host=127.0.0.1

Siguientes pasos

Pruébalo

Si es la primera vez que utilizas Google Cloud, crea una cuenta para evaluar el rendimiento de Cloud SQL en situaciones reales. Los nuevos clientes también reciben 300 USD en crédito gratuito para ejecutar, probar y desplegar cargas de trabajo.

Probar Cloud SQL gratis