MySQL en Google Cloud SQL

Ronaldo B.1 de agosto de 20224 min de lectura

Esta publicación es una guía paso a paso para que aprendas a hospedar tu base de datos MySQL en Google Cloud SQL.

Obviamente necesitas una cuenta en Google y una tarjeta de crédito para activar la facturación. Si es la primera vez, Google te dará $300 de crédito para probar cualquier servicio, así podrás aprender, conocer e incluso evaluar los precios cobrados.

Todos los servicios que configuras en GCloud se agrupan por proyectos, así que lo primero que debes hacer es crear o seleccionar un proyecto.

Accede a la pantalla de proyectos en el enlace https://console.cloud.google.com/cloud-resource-manager y crea un proyecto con el nombre que desees.

Ahora vamos a la sección de Bases de Datos. En GCloud lo llaman Cloud SQL, ya que también ofrecen otras bases de datos que no utilizan el lenguaje SQL.

Haz clic en Crear instancia. Hasta la fecha de esta publicación, tenemos tres opciones: SQL Server (2017), MySQL (5.6 y 5.7) y PostgreSQL (9.6, 10 y 11). ¡En este caso trabajaremos con MySQL!

En el siguiente formulario tenemos los siguientes campos:

ID de la instanciaEs un nombre único y permanente para identificar tu instancia de base de datos y diferenciarla de otras instancias.
Contraseña raízContraseña del usuario root creado por defecto.
RegiónLugar físico del servidor que se usará para ejecutar tu Base de Datos.
ZonaZona dentro de la región elegida anteriormente.
Versión de la base de datos
  • MySQL 5.7
  • MySQL 5.6

Después de hacer clic en Crear serás redirigido a la lista de instancias y deberás esperar hasta que tu instancia sea creada.

Una vez creada y lista para usar, podemos intentar acceder usando el propio shell script del sitio de Google Cloud, el Cloud Shell.

En cuanto termine de inicializar, escribe el siguiente comando. Recuerda reemplazar la palabra IdInstance por el nombre de la instancia que elegiste al crearla.

gcloud sql connect IdInstance --user=root

Te pedirá la contraseña del usuario root que ya definiste en la creación también.

Ahora vamos a crear una base de datos, una tabla e insertar un registro. Esta es una tarea bastante simple, especialmente para quienes ya hicieron nuestro curso Dominando Banco de Dados com MYSQL.

  • Primero, comando para crear una base de datos:
  • CREATE DATABASE hcodedb;
  • Segundo, selecciona la base de datos hcodedb:
  • USE hcodedb;
  • Tercero, comando para crear una tabla:
  • CREATE TABLE users (id INT NOT NULL AUTO_INCREMENT, name VARCHAR(256) NOT NULL, PRIMARY KEY(id));
  • Cuarto, comando para insertar un registro:
  • INSERT INTO users (name) VALUES('João');

¡Muy bien! Ahora haz un SELECT para ver si todo salio bien:

SELECT * FROM users;

Verifica en el resultado si el usuario que acabamos de insertar aparece listado.

Pero es claro que en el día a día puede ser que no quieras siempre acceder a tu base de datos MySQL de esta manera. Una forma que nos gusta es usando el MySQL Workbench. Así que si aún no lo tienes instalado, descárgalo e instálalo para que podamos continuar.

Volviendo a la lista de instancias de Google Cloud SQL, haz clic en el nombre de la instancia que creaste. Serás redirigido a un panel con todos los detalles de tu instancia. Pero lo que queremos es la dirección IP pública de tu instancia.

También necesitamos crear un usuario con permisos de acceso remoto, al fin y al cabo no sería bueno hacerlo con el usuario root que tiene acceso total a nuestro servicio de base de datos.

Haz clic en la pestaña Usuarios y luego en el botón Crear cuenta de usuario.

En esta pantalla puedes definir si este usuario puede conectarse desde cualquier host o solo desde uno específico. Es importante permitir cualquier host porque nuestra IP (Host) cambia con frecuencia.

Después de hacer clic en Crear, vamos a la pestaña Conexiones, porque el usuario puede conectarse desde cualquier IP, pero nuestro servidor no permite que las conexiones vengan de cualquier lugar (esto es estándar por seguridad).

En la parte de Conectividad, marca la opción IP pública y haz clic en añadir red.

Coloca la siguiente red: 0.0.0.0/0

Esto permitirá conectar cualquier cliente IPv4.

Ahora sí, vamos a Workbench.

Al hacer clic en añadir una nueva conexión, se presentará esta pantalla. En ella necesitarás completar:

Connection NameNombre de la conexión para que puedas recordarlo más tarde.
HostnameDirección IP de tu servidor MySQL (En este caso del Google Cloud SQL)
UsernameEl usuario que creamos con acceso de cualquier host.
PasswordLa contraseña del usuario que creamos.
Default SchemaLa base de datos predeterminada al conectarse. Este campo no es obligatorio, pero en este caso podemos poner la base de datos hcodedb que ya creamos por Cloud Shell.

Si todo salió bien, notarás que ya tenemos aquí nuestra base de datos con la tabla users:

Vamos a hacer el mismo SELECT que ya hicimos en Cloud Shell.

SELECT * FROM users;

Deberías obtener el mismo resultado.

¡Perfecto! Todo funcionando, ahora ya tienes tu servidor de base de datos MySQL en Internet listo para recibir tus proyectos y ponerlo a disposición de cualquier aplicación en cualquier parte del mundo.

Si aún no has revisado nuestro curso Dominando Banco de Dados com MySQL, ahora es el momento adecuado para hacerlo. Haz clic aquí y domina de verdad esta increíble base de datos.

Sigue aprendiendo con Hcode

Regístrate en la plataforma de cursos y sigue las próximas guías del blog.