Si trabajas con Google Cloud y necesitas almacenar datos estructurados, Cloud SQL es el servicio que te permite gestionar bases de datos relacionales administradas sin preocuparte por el sistema operativo ni por los parches. Aquí verás qué motores soporta, cómo crear una instancia paso a paso y cómo conectarte desde la Cloud Shell.
Qué es Cloud SQL y qué motores soporta
Cloud SQL es la solución de Google Cloud para bases de datos relacionales bajo el modelo Platform as a Service (PaaS). Eso significa que tú te enfocas en los datos y Google se encarga del resto.
Los motores soportados son tres:
- MySQL en distintas versiones.
- PostgreSQL.
- SQL Server.
Existe también AlloyDB, una base de datos pensada para correr Postgres con alto rendimiento, aunque no se aborda en esta práctica [2:00].
¿Qué significa que Cloud SQL sea PaaS? Que no administras el sistema operativo, los parches ni la infraestructura. Solo configuras la base de datos y la usas.
Qué ventajas ofrece una base de datos administrada
Al ser administrada, Cloud SQL te entrega beneficios que ahorran tiempo de operación:
- Aumento de disco inmediato, sin apagar la base.
- Sin gestión de sistema operativo ni de actualizaciones.
- Alta disponibilidad habilitada con un clic.
- Failover automático cuando está habilitado.
- Backups diarios por default, conservando los últimos 7 días.
- Conexión vía IP pública o IP privada.
Esta combinación reduce la fricción operativa y deja la responsabilidad de la infraestructura en Google [1:00].
Cómo crear una instancia de Cloud SQL paso a paso
El flujo de creación arranca desde la consola de Google Cloud, en el menú SQL y luego en Instancias. Ahí eliges el motor y la edición.
Para este ejercicio se usa MySQL en su edición Enterprise (la otra opción es Enterprise Plus, cuya principal diferencia está en la disponibilidad) [3:30]:
- Selecciona el ajuste predeterminado de desarrollo.
- Usa MySQL versión 8.
- Asigna el identificador Platzi Training SQL 01.
- Genera la contraseña y cópiala, porque la necesitarás al conectarte.
- Define la disponibilidad: zonal (una sola zona) o varias zonas para alta disponibilidad, siempre dentro de un servicio regional.
- Da clic en Crear instancia.
La instancia tarda entre 5 y 6 minutos en quedar disponible. En este caso, queda con 4 vCPUs, 16 GB de memoria y 100 GB de almacenamiento [5:30].
Cómo funcionan las copias de seguridad por default
En el menú de Copias de seguridad verás que ya existe una copia generada en el momento exacto de la creación. A partir de ahí, Cloud SQL retiene una copia diaria durante los últimos 7 días, sin que tengas que configurar nada extra [6:30].
Cómo conectarte a Cloud SQL desde la Cloud Shell
La conexión se hace con el cliente MySQL Client, que ya viene preinstalado en la Cloud Shell. Si lo haces desde tu terminal local, recuerda instalarlo primero.
El comando base es:
bash
mysql -h IP_PUBLICA -u root -p
Al ejecutarlo por primera vez, la conexión falla. ¿Por qué? Porque la IP desde la que intentas entrar no está autorizada en la base, aunque la instancia ya esté creada.
¿Cómo obtengo mi IP pública para autorizarla? Ejecuta curl ifconfig.me desde tu terminal. El servicio te devuelve la IP saliente que necesitas registrar.
Cómo autorizar tu IP en redes autorizadas
Una vez tengas tu IP, ve al menú Conexiones y luego a Redes. Baja hasta Redes autorizadas, da clic en Agregar red y pega la IP copiada [8:30].
Guarda la configuración y espera unos segundos a que se aplique. Después, repite el comando mysql -h ... -u root -p, ingresa el password y entrarás a la base. Desde ahí puedes lanzar comandos estándar como:
sql
show databases;
Con esto ya tienes una base de datos relacional administrada, conectada y lista para operar dentro de tu proyecto en Google Cloud. ¿Qué motor probarías primero en tu próximo proyecto, MySQL, Postgres o SQL Server? Cuéntalo en los comentarios.