Saltar al contenido

MariaDB

MariaDB

MariaDB es un sistema de gestión de bases de datos relacionales de código abierto, que fue creado por los mismos desarrolladores que originalmente crearon MySQL. MariaDB es una bifurcación de MySQL, lo que significa que se basa en gran medida en el código fuente de MySQL, pero con algunas mejoras y nuevas características. MariaDB es compatible con la mayoría de las aplicaciones, herramientas y lenguajes de programación que actualmente usan MySQL, por lo que es una alternativa popular y sólida a MySQL en el mundo empresarial y de desarrollo de software.

Índice

Historia

La historia de MariaDB se remonta al año 2009, cuando la empresa finlandesa Monty Program Ab, fundada por Michael «Monty» Widenius, uno de los creadores originales de MySQL, decidió crear un fork (bifurcación) de MySQL debido a su preocupación por la adquisición de MySQL AB (la compañía detrás de MySQL en ese momento) por parte de Sun Microsystems, que a su vez fue adquirida posteriormente por Oracle Corporation.

El objetivo principal de la creación de MariaDB era crear una alternativa de código abierto y gratuita a MySQL, que mantuviera la compatibilidad con MySQL, pero que también tuviera características y mejoras adicionales. El nombre «Maria» proviene del nombre de la hija menor de Monty.

El primer lanzamiento de MariaDB, versión 5.1, se produjo en enero de 2010. Desde entonces, ha habido numerosas versiones y actualizaciones.

Actualmente, MariaDB es una base de datos de código abierto muy popular y ampliamente utilizada en todo el mundo, especialmente por empresas y organizaciones que buscan una alternativa a MySQL o que desean una base de datos escalable, segura y de alto rendimiento para aplicaciones web y móviles. Además, cuenta con una comunidad de usuarios y desarrolladores activa y comprometida que trabaja constantemente en mejorar y hacer crecer la base de datos.

¿Por qué elegir MariaDB?

Existen varias razones por las cuales alguien podría elegir MariaDB sobre otros sistemas de gestión de bases de datos, entre ellas:

  • Licencia: MariaDB es un software libre y de código abierto bajo la Licencia Pública General de GNU, lo que significa que se puede utilizar, copiar, modificar y distribuir libremente sin restricciones.
  • Rendimiento: MariaDB se ha desarrollado para ser más rápido que MySQL, su predecesor. Además, incluye un optimizador de consultas mejorado y utiliza múltiples subprocesos para procesar solicitudes, lo que permite una mayor capacidad de respuesta y rendimiento.
  • Escalabilidad: MariaDB es altamente escalable, lo que significa que puede manejar grandes cantidades de datos y muchos usuarios simultáneamente sin disminuir el rendimiento.
  • Seguridad: MariaDB tiene múltiples características de seguridad integradas, incluyendo cifrado SSL/TLS, autenticación de dos factores y encriptación de datos en reposo.
  • Compatibilidad: MariaDB es altamente compatible con MySQL, lo que significa que se puede migrar fácilmente a MariaDB desde MySQL sin tener que cambiar la mayoría del código y sin perder datos.
  • Comunidad: MariaDB cuenta con una gran comunidad de desarrolladores y usuarios activos que contribuyen a mejorar el software y proporcionan soporte a través de foros y listas de correo.

¿Cuáles son las principales características de MariaDB?

MariaDB cuenta con varias características que lo hacen una opción atractiva como gestor de base de datos, algunas de las más importantes son:

  • Alta disponibilidad y escalabilidad: MariaDB es capaz de manejar grandes volúmenes de datos y múltiples conexiones concurrentes, lo que lo hace ideal para aplicaciones empresariales que requieren alta disponibilidad y escalabilidad.
  • Rendimiento: MariaDB ha sido diseñado para ofrecer un alto rendimiento en la gestión de datos, gracias a su arquitectura de almacenamiento en columna, que permite una lectura más rápida de los datos.
  • Seguridad: MariaDB cuenta con varias características de seguridad, incluyendo encriptación SSL, autenticación de dos factores y encriptación de datos en reposo.
  • Compatibilidad con MySQL: MariaDB se basa en gran medida en el código fuente de MySQL, lo que le permite ser compatible con la mayoría de las aplicaciones y herramientas que fueron diseñadas para MySQL.
  • Alta disponibilidad y replicación: MariaDB cuenta con características de alta disponibilidad y replicación que permiten distribuir datos en diferentes nodos y asegurar su disponibilidad ante fallos de hardware o software.
  • Múltiples motores de almacenamiento: MariaDB soporta múltiples motores de almacenamiento, incluyendo InnoDB, MyISAM y Aria, lo que permite a los desarrolladores elegir el que mejor se adapte a las necesidades de su aplicación.
  • Open source: MariaDB es un proyecto de código abierto, lo que significa que está disponible para su uso y mejora por parte de cualquier persona en todo el mundo, lo que resulta en una comunidad activa y una base de conocimientos amplia y diversa.

Tipos de datos soportados en MariaDB

MariaDB admite una amplia variedad de tipos de datos, que se pueden clasificar en varias categorías:

  • Números: incluyen tipos de datos para números enteros y decimales, como INT, BIGINT, DECIMAL, FLOAT, etc.
  • Caracteres: incluyen tipos de datos para almacenar cadenas de caracteres, como CHAR, VARCHAR, TEXT, etc.
  • Fecha/hora: incluyen tipos de datos para almacenar fechas y horas, como DATE, TIME, DATETIME, TIMESTAMP, etc.
  • Booleanos: incluye un tipo de datos para almacenar valores de verdadero/falso, denominado BOOLEAN.
  • Binarios: incluyen tipos de datos para almacenar datos binarios, como BLOB, BINARY, etc.
  • Geoespaciales: incluyen tipos de datos para almacenar información de coordenadas geográficas y geometría, como POINT, LINESTRING, POLYGON, etc.

Además, MariaDB también admite tipos de datos JSON, XML, UUID y varios tipos de datos específicos de almacenamiento de columnas, como COLUMNSTORE y SPIDER.

¿Cómo crear una base de datos en MariaDB?

  1. Conectarse al servidor de bases de datos MariaDB usando un cliente de línea de comandos como MySQL shell o a través de una interfaz gráfica de usuario como phpMyAdmin.
  2. Una vez conectado al servidor, se puede usar el comando CREATE DATABASE seguido del nombre que se desea dar a la nueva base de datos:

    CREATE DATABASE nombre_de_la_base_de_datos;

    Por ejemplo, para crear una base de datos llamada «mi_base_de_datos», se puede ejecutar el siguiente comando:

    CREATE DATABASE mi_base_de_datos;
  3. Si se desea especificar un conjunto de caracteres y ordenación para la nueva base de datos, se puede utilizar la cláusula CHARACTER SET seguida del conjunto de caracteres y la cláusula COLLATE seguida de la ordenación. Por ejemplo:

    CREATE DATABASE mi_base_de_datos
    CHARACTER SET utf8mb4
    COLLATE utf8mb4_general_ci;


    En este caso, se está creando una nueva base de datos llamada «mi_base_de_datos» con un conjunto de caracteres utf8mb4 y una ordenación utf8mb4_general_ci.
  4. Una vez creada la base de datos, se puede seleccionar usando el comando USE:

    USE mi_base_de_datos;

    A partir de este momento, todas las consultas que se realicen en el cliente de MariaDB se aplicarán a la base de datos «mi_base_de_datos».

Es importante recordar que se deben tener los permisos necesarios para crear nuevas bases de datos en el servidor de MariaDB.

Buenas practicas al trabajar con MariaDB

  • Mantener actualizado el software de MariaDB para asegurarse de tener acceso a las últimas funcionalidades y correcciones de seguridad.
  • Utilizar contraseñas seguras y cambiarlas regularmente para proteger la base de datos de accesos no autorizados.
  • Evitar el uso de cuentas de usuario con privilegios de administrador para tareas de rutina, y limitar el acceso a la base de datos a usuarios autorizados y necesarios.
  • Utilizar índices adecuados para mejorar el rendimiento de las consultas y reducir el tiempo de espera.
  • Realizar copias de seguridad de la base de datos de forma regular y mantenerlas en un lugar seguro.
  • Evitar la sobrecarga de la base de datos mediante la eliminación de datos obsoletos o innecesarios.
  • Utilizar transacciones para asegurarse de que las operaciones de la base de datos se completen correctamente o se reviertan si se produce un error.
  • Asegurarse de que las consultas y los comandos enviados a la base de datos sean seguros para evitar ataques de inyección de SQL.
  • Utilizar herramientas de monitorización para supervisar el rendimiento y el estado de la base de datos.
  • Mantener documentación detallada de la estructura de la base de datos, así como de los procedimientos y políticas utilizados para su mantenimiento y gestión.

Recursos para seguir aprendiendo MariaDB

¿Quieres profundizar en tus conocimientos de MariaDB? ¡Estás en el lugar adecuado! En esta sección te presentamos algunos de los mejores recursos para seguir aprendiendo sobre esta popular Base de datos.

Recursos para aprender 【MariaDB】 en español y GRATIS

Mejores Libros para aprender MariaDB

Documentación oficial de MariaDB

Otras bases de datos