MySQL, MariaDB y PostgreSQL: ¿Cuál elegimos?

En este artículo vamos a ofrecer una explicación clara y concisa sobre los motivos por los que podríamos decantarnos por uno u otro motor de las bases de datos más populares de código abierto, como son MySQL, MariaDB y PostgreSQL. Para que cualquier persona pueda entender cuál podría ser el más adecuado para cada tipo de proyecto.

Para comenzar es importante que veamos una descripción breve de cada uno de estos SGBD (Sistema de gestión de bases de datos) open source.

MySQL: Es un sistema muy popular de bases de datos, propiedad de Oracle, el más usado a nivel global. Comenzó con un conjunto de funcionalidades más bien reducidas, pero que a día de hoy lo podemos considerar de grado empresarial.

MariaDB: Es un SGBD completamente compatible con MySQL creado por la comunidad, por lo que no pertenece a ninguna empresa. En realidad es un «fork» de MySQL, aunque desde su creación se ha ido separando del proyecto inicial, publicando distintas mejoras.

PostgreSQL: Es el SGBD más potente del mercado, no solo por su funcionalidad, sino también por la carga que puede llegar a soportar. No está tan extendido como MySQL, pero también resulta muy popular en aquellos proyectos de cierta envergadura.

Criterios para elegir entre las alternativas de motores de bases de datos

Podríamos plantearnos diversos criterios a la hora de elegir una de las diversas alternativas de motores de bases de datos del mercado open source, como el tamaño del proyecto, la disponibilidad, la comunidad que hay detrás o la licencia con la que se ofrecen.

Si bien es cierto que en muchos de los casos la elección ni siquiera es competencia nuestra, puesto que es posible que venga dada por ciertos requisitos de un proyecto como las preferencias de la empresa o experiencia de sus desarrolladores o administradores, vamos a ofrecer algunas de las claves por las que decantarnos por uno u otro sistema.

Cuándo elegir MySQL

El primer aspecto por el que MySQL es la elección más común es porque es prácticamente un estándar en la mayoría de las configuraciones de servidores. Debemos tener en cuenta que, en alojamientos compartidos, MySQL suele ser la base de datos que nos ofrecen, por lo que no se tiene mucha maniobra para escoger.

Nota: Sin embargo, lo cierto es que actualmente contar con un servidor VPS o Cloud es muy económico y en esa modalidad de alojamiento es perfectamente posible elegir cualquier sistema que necesitemos.

De todos modos, impuesta o no, MySQL es una buena elección en términos de potencia y funcionalidades. Ofrece todas las capacidades que los proyectos más comunes puedan necesitar, aunque sobre todo es adecuada para proyectos pequeños y medianos.

Cuándo elegir MariaDB

MariaDB es un motor completamente compatible con MySQL, por lo que podemos usar uno u otro, o intercambiarlos, y las aplicaciones seguirán funcionando de igual manera. Por ello, en términos prácticos, podemos elegir entre estos dos SGBD de manera transparente para el desarrollo de los proyectos.

El problema fundamental de MySQL es su licencia. MySQL se ofrece con licencia dual, por lo que el propietario (Oracle) dispone de dos versiones del producto, la «Enterprise» y la «Community». Si no se desea pagar una licencia tenemos que usar la versión Community, que a decir verdad la tienen un poco escondida en la página de descargas.

Esta dualidad provoca confusión y es ahí donde MariaDB gana enteros. Aquellos convencidos por el software libre no tienen dudas e instalan MariaDB en sus servidores. Adicionalmente, MariaDB ha seguido incorporando novedades en su software, presentando nuevos motores y posibilidades que hacen que, a día de hoy, sea un proyecto un poco superior que el propio MySQL. Si te interesa profundizar en este punto te recomendamos el post Cuándo y por qué utilizar MariaDB.

Cuándo elegir PostgreSQL

PostgreSQL es una de las mejores alternativas de SGBD de la actualidad, no solo de código abierto, sino también a nivel comercial. No tiene nada que envidiarle a otros gestores altamente considerados como Oracle. Por lo tanto, a nivel empresarial o para proyectos realmente exigentes, es un sistema gestor de base de datos altamente recomendable.

PostgreSQL siempre ha ido por delante en cuanto a posibilidades, en comparación con otros motores de código abierto, ofreciendo mecanismos para el trabajo con una cantidad muy superior de tipos de datos y operaciones. Además es un sistema de bases de datos objeto-relacional, por lo que es posible extenderlo para poder realizar un tratamiento potente y eficiente sobre cualquier tipo de información que se pueda llegar a necesitar.

Al ser una base de datos menos usada, podemos encontrar menor cantidad de tutoriales o  cursos que los que encontramos para MySQL, pero lo cierto es que su comunidad sigue siendo amplia y no será complicado encontrar respuestas a las dudas que nos vayan surgiendo en su uso. Pero si nos preocupa realmente el soporte, PostgreSQL tiene una política muy enfocada a las exigencias de la empresa, ya que sus versiones son a largo término (5 años) y aunque nos quedemos con una versión antigua en un proyecto, hay empresas externas que son capaces de ampliar el soporte.

PostgreSQL es por tanto el proyecto más profesional que podemos encontrar en el mercado del software libre. Y sin embargo, a nivel de desarrollador no encontraremos muchas diferencias, ya que usa estándares como SQL para acceder a todo tipo de operaciones. Eso sí, es una base de datos más pesada, que requiere más esfuerzo del servidor y conocimiento de administración de bases de datos para optimizarla, de modo que alcance un elevado rendimiento.

Sistemas de abstracción de bases de datos

Acabamos con una recomendación para desarrolladores, que consiste en utilizar sistemas de abstracción de bases de datos. Estos sistemas nos permiten acceder a cualquier base de datos mediante una interfaz estándar, de modo que, si más adelante necesitamos intercambiar un motor de bases de datos por otro, no repercute en el código que hemos ido desarrollando para el proyecto.

En este sentido PHP nos ofrece PDO, que sería una de las prácticas recomendables que ya vimos en el artículo de Buenas prácticas para PHP.

La copia de seguridad que necesitas para tus dispositivos, tus proyectos y tus datos
Accede a tus archivos desde cualquier dispositivo y lugar de forma segura
pack
10 GB
Gratis
Consigue tu backup ahora