# MariaDB

MariaDB es un sistema de gestión de bases de datos derivado de MySQL con licencia GPL (General Public License). Es desarrollado por Michael (Monty) Widenius —fundador de MySQL—, la fundación MariaDB y la comunidad de desarrolladores de software libre. Introduce dos motores de almacenamiento nuevos, uno llamado Aria —que reemplaza a MyISAM— y otro llamado XtraDB —en sustitución de InnoDB—. Tiene una alta compatibilidad con MySQL ya que posee las mismas órdenes, interfaces, API y bibliotecas y su objetivo es poder cambiar un servidor por otro directamente.
Este SGBD surge a raíz de la compra de Sun Microsystems, compañía que había comprado previamente MySQL AB, por parte de Oracle. MariaDB es una bifurcación directa de MySQL que asegura la existencia de una versión de este producto con licencia GPL. Widenius decidió crear esta variante porque estaba convencido de que el único interés de Oracle por MySQL era reducir la competencia que suponía MySQL.

## Versiones de MariaDB

MariaDB mantiene actualmente 9 ramas de distintas versiones en desarrollo:
* 11.3
* 11.2
* 11.1
* 11.0
* 10.11
* 10.10
* 10.9
* 10.6
* 10.5
* 10.4
La versión 10.1 ya no está en desarrollo ni se soporta de ninguna forma desde el 17 de octubre de 2020

### Licencia

La Fundación MariaDB menciona, traducido al español:
   MariaDB Server seguirá siendo un software gratuito y de código abierto con licencia GPLv2, independiente de cualquier entidad comercial.

### Diferencias con MySQL

En la práctica, MariaDB reemplaza directamente a la misma versión de MySQL (MySQL 5.1 → MariaDB 5.1, MariaDB 5.2 y MariaDB 5.3 son compatibles. MySQL 5.5 → MariaDB 5.5). Las diferencias se encuentran en estos puntos:
Mecanismos de almacenamiento Además de los mecanismos de almacenamiento estándar MyISAM, Blackhole, CSV, Memory y Archive, también se incluyen en la versión fuente y binaria de MariaDB los siguientes:
* Aria (alternativa a MyISAM resistente a caídas)
* XtraDB (reemplazo directo de InnoDB)
* PBXT (en MariaDB 5.1, 5.2 y 5.3. Deshabilitada en 5.5)
* FederatedX (reemplazo directo de Federated)
* OQGRAPH — nuevo en 5.2
* SphinxSE — nuevo en 5.2
* IBMDB2I. Eliminada por Oracle de MySQL 5.1.55 pero se incluye en el código de MariaDB hasta la versión 5.5.
* Cassandra, en MariaDB 10.0 (otros mecanismos NoSQL se incluirán en MariaDB)
* Sequence, aparecido con MariaDB 10.0.3
Facilidad de uso
* Proporciona estadísticas de índices y tabla, para lo que añade nuevas tablas en INFORMATION_SCHEMA y nuevas opciones a los comandos FLUSH y SHOW para identificar la causa en la carga del SGBD.
* Los comandos ALTER TABLE y LOAD DATA INFILE dejan de ser opacos e informan del progreso.
* La precisión para tipo de datos TIME, DATETIME, y TIMESTAMP ampliada al microsegundo.
* Introducidas características estilo NoSQL, como HandlerSocket que proporciona acceso directo a tablas InnoDB saltándose la capa SQL.
* Columnas dinámicas, que proporcionan al usuario columnas virtuales en las tablas.
* Las subqueries funcionan correctamente.
Prestaciones
* El optimizador de MariaDB, que se encuentra en el núcleo de cualquier SGBD, funciona claramente más rápido con cargas complejas.
* En la replicación se han introducido sustanciosas mejoras; por ejemplo, el «group commit for the binary log», que acelera la replicación hasta el doble.
* Eliminación de tablas. El acceso a tablas a través de views acelera el acceso.
Testeo
* Más juegos de test en la distribución.
* Parches para los tests.
* Distintas combinaciones de configuración y sistema operativo para los tests.
* Eliminación de tests innecesarios, como "no testar la característica X si no la he incluido en mi ejecutable".
Menos errores y alertas
* Los juegos de testeo han permitido reducir los errores sin introducir nuevos.
* Las alertas de compilación están relacionadas, y los desarrolladores las han intentado reducir.

### Software de terceros

Hay bastantes paquetes privativos y libres de terceros diseñados para MySQL que también están disponibles para integrarse con MariaDB. Algunos ejemplos son:
* DBEdit, una aplicación de administración libre para MariaDB y otras bases de datos.
* dbForge Studio for MySQL, aplicación propietaria de gestión de bases de datos MySQL compatible con MariaDB.
* Navicat, una serie de aplicaciones propietarias de gestión de bases de datos para Windows, Mac OS X y Linux.
* SQLyog, aplicación propietaria de gestión de bases de datos MySQL compatible con MariaDB para Windows y Linux.
* HeidiSQL, un cliente de fuente abierta y libre para MySQL, 100% compatible con MariaDB, incluido con el paquete MSI para Windows de MariaDB desde la versión 5.2.7.
* phpMyAdmin, una aplicación web de administración libre para MySQL compatible con MariaDB.

### Usuarios notables

MariaDB se usa en algunas de las instalaciones más reconocidas del mundo, como por ejemplo ServiceNow, DBS Bank, Google, la Fundación Mozilla y, desde 2013, en la Fundación Wikimedia.
La distribución Debian GNU/Linux desde su versión 9 (Stretch) incorpora MariaDB por defecto.

## Fundación MariaDB

En diciembre de 2012 Michael Widenius y David Axmark crearon MariaDB Fundation, que desde ese momento fue la encargada de controlar el desarrollo de MariaDB Server. El actual director general de la Fundación MariaDB es Kaj Arnö desde febrero de 2019.
La fundación MariaDB es distinta a la empresa MariaDB Corporation, ya que es una organización sin ánimo de lucro que vive de las donaciones y de sus patrocinadores. Su mayor donante es MariaDB Corporation.
MariaDB Foundation tiene los derechos de mariadb server y de la web mariadb.org y su misión es garantizar que el código fuente de mariadb server siempre estará a disposición de la comunidad.
La Fundación describe su misión como la siguiente, traducida al español:
   Los pilares de la misión de la Fundación MariaDB son Apertura, Adopción y Continuidad.
   * Nos aseguramos de que el código base del servidor MariaDB permanezca abierto para su uso y contribuciones según los méritos técnicos.
   * Nos esforzamos por aumentar la adopción por parte de los usuarios y en todos los casos de uso, plataformas y medios de implementación.
   * Brindamos continuidad al ecosistema del servidor MariaDB, independientemente de cualquier entidad comercial.

## MariaDB Corporation Ab

Inicialmente, las actividades de desarrollo en torno a MariaDB se basaban completamente en código abierto y no comercial. Para construir un negocio global, en 2010 Patrik Backman, Ralf Wahlsten, Kaj Arnö, Max Mether, Ulf Sandberg, Mick Carney y Michael "Monty" Widenius fundaron MariaDB Corporation Ab. MariaDB Corporation Ab anunció en febrero de 2022 su intención de convertirse en una empresa que cotiza en la Bolsa de Valores de Nueva York (NYSE).