Nuevo proyecto Laravel: la documentación admite ambos. El host compartido sólo ofrece MariaDB. El desarrollador principal prefiere Postgres para JSONB y restricciones. El vendedor cita "MySQL es más rápido" sin realizar evaluaciones comparativas.
Para una aplicación web moderna, la comparación no se basa en un eslogan: en el modelo de datos y el ecosistema de alojamiento.
Fortalezas por uso de la web
| Uso | MySQL/MariaDB | PostgreSQL |
|---|---|---|
| WordPress clásico / Drupal | Nativo | No estándar |
| Nuevo proyecto Laravel/Django | Aceptar | A menudo preferido |
| JSON semiestructurado | Tipo JSON | JSONB indexado |
| Geoespacial | Limitado | PostGIS |
| Informes SQL avanzados | Correcto | CTE, ventanas fuertes |
| Alojamiento de nivel básico | Omnipresente | Menos común |
MySQL sirve bien al histórico CMS web. Postgres sirve bien al producto de aplicación con lógica básica.
Criterios técnicos que deciden
Elija MySQL/MariaDB si: pila impuesta (WordPress, PrestaShop por defecto), alojamiento compartido sin Postgres, equipo de MySQL DBA existente.
Elija PostgreSQL si: restricciones estrictas de integridad, JSONB, búsqueda de texto completo integrada, análisis SQL, extensiones (pgvector, PostGIS).
Alojamiento y operación
Compartido: MariaDB incluido - Postgres ausente → MySQL implícito.
VPS: instale ambos; base y aplicación separadas.
Administrado: RDS/Aurora MySQL frente a RDS/Scaleway Postgres: compare precios de copia de seguridad puntuales y de almacenamiento idénticos.
Rendimiento y puesta a punto: la comparación real
MySQL 8 y PostgreSQL 16 bien configurados son equivalentes a la carga OLTP clásica. Las lagunas aparecen en consultas analíticas, restricciones referenciales estrictas, JSON indexado y extensiones. Antes de decidir, exporte sus diez consultas más lentas desde el registro de consultas lentas o pg_stat_statements y pruébelas en ambos motores con un volumen representativo.
En compartido, MariaDB a menudo impone límites de tamaño de conexión y base de datos; verifique antes de enviar Postgres a producción. En VPS, separe siempre base y aplicación; La ubicación conjunta de ambos en un servidor pequeño es la causa más común de lentitud "inexplicable".
Migración y deuda técnica
Cambiar el motor durante su vida útil cuesta semanas de migración de esquema y pruebas de regresión. En un proyecto nuevo, decida antes de la primera migración de ORM. WordPress y PrestaShop a menudo imponen MySQL/MariaDB; no prometa a Postgres "para la modernidad" sin una pila compatible. Los ORM a veces ocultan consultas N+1 que castigan a un motor más que al otro: perfil antes de culpar a la base de datos.
La cima: la base que mejor le sirve a tu app es la que alojas correctamente
Alinear la elección del motor y la elección del alojamiento en el mismo taller.
Decide y avanza sin puntos ciegos
Primero, enumere el CMS o marco requerido y las extensiones base requeridas en un documento compartido. Consulta la oferta del host: Postgres disponible, versión, copia de seguridad administrada. Haga prototipos de consultas críticas en ambos motores si persiste la duda. Compare hosts básicos a través del directorio y el comparador con costos de almacenamiento y restauración idénticos.
Preguntas frecuentes
¿Debería WordPress permanecer en MySQL?
WordPress oficial apunta a MySQL/MariaDB; Postgres es posible a través de complementos no estándar. Para WordPress puro, MySQL/MariaDB sigue siendo la opción racional.
¿PostgreSQL es más “estricto”?
Sí, los tipos, las restricciones de clave externa y las transacciones suelen ser más rigurosos. Útil para modelos complejos; requiere migraciones más limpias.
¿MySQL 8 vs PostgreSQL 16 para el nuevo SaaS?
Postgres si JSONB, CTE recursivo, ventanas analíticas, PostGIS. MySQL si es un equipo heredado de MySQL, alojamiento compartido económico o pila LAMP impuesta.
¿Impacto del alojamiento?
Compartido = MySQL/MariaDB casi siempre. VPS/nube = ambos; Postgres administrado actual para SaaS moderno.
MySQL o PostgreSQL: la base que mejor sirve a tu aplicación web es aquella que tu stack y tu host soportan sin contorsiones.
