
MySQL
MySQL es la base de datos que no necesita presentación.
Es el motor que impulsó el crecimiento de la web durante más de veinte años.
Nacido en 1995 en Suecia, en 2008 fue adquirido por Sun Microsystems — y cuando Oracle completó la adquisición de Sun en 2010, MySQL acabó en el portafolio del mayor proveedor de bases de datos comerciales del mundo. Yo era empleado de Oracle en ese momento, y recuerdo bien el clima: por un lado la curiosidad de ver cómo Oracle gestionaría un producto open source tan popular, por otro el temor de que MySQL fuera marginado a favor de la base de datos propietaria.
Ese temor llevó a Michael “Monty” Widenius — el creador original de MySQL — a hacer el fork en 2009, dando vida a MariaDB. Un proyecto que comparte sus raíces con MySQL pero ha tomado caminos propios en motores de almacenamiento, optimizador y funcionalidades avanzadas.
La historia ha demostrado que ambos proyectos sobrevivieron y evolucionaron, pero sus decisiones arquitectónicas divergen cada vez más. Conocer las diferencias no es academia — es necesidad operativa.
En esta sección exploro MySQL y MariaDB desde una perspectiva operativa: seguridad, gestión de usuarios, rendimiento y decisiones de diseño que marcan la diferencia en entornos de producción.
Porque usar MySQL no es solo ejecutar consultas.
Es entender cómo el motor gestiona conexiones, privilegios y recursos bajo carga real.
Binary log en MySQL: qué son, cómo gestionarlos y cuándo puedes borrarlos
Un servidor MySQL con el disco al 95%, 180 GB de binary log acumulados en seis meses. De ahí parte un viaje por los binlog: qué contienen, por qué existen, cómo funcionan con la replicación y el point-in-time recovery, y sobre todo cómo gestionarlos sin causar daños.
Galera Cluster con 3 nodos: cómo resolví un problema de disponibilidad en MySQL
Un cliente con un MySQL standalone que caía cada mes llevándose la aplicación entera. Mi solución: un Galera Cluster de 3 nodos con replicación síncrona. Desde el diagnóstico hasta la puesta en producción, con todos los archivos de configuración y los parámetros críticos.
Usuarios MySQL: por qué 'mario' y 'mario'@'localhost' no son la misma persona
En MySQL y MariaDB la identidad de un usuario depende del host desde el que se conecta. Un caso real, el modelo de autenticación explicado a fondo y los errores más comunes en la gestión de accesos.
MySQL multi-instancia: un ticket, un CSV y el muro de secure-file-priv
Una operación que debía durar cinco minutos — extraer un CSV de MySQL — se convierte en una investigación entre instancias múltiples en el mismo servidor, sockets Unix, puertos diferentes y la directiva secure-file-priv que bloquea todo. Desde la conexión a la instancia correcta hasta el export desde shell.
Disco lleno en un cluster MySQL: binary logs, Group Replication y una migración que no admite errores
Filesystem al 92% en un cluster MySQL Group Replication de 3 nodos. ¿La causa? Binary logs acumulados en el volumen principal. Desde la alerta hasta la migración a un volumen dedicado, nodo por nodo, sin perder el quórum.




