El mensaje "Error establishing a database connection" es uno de los errores más críticos en WordPress porque significa que tu sitio no puede acceder a ningún dato almacenado en la base de datos. Sin conexión a MySQL, WordPress no puede cargar páginas, entradas, configuraciones ni ningún tipo de contenido.
Este error provoca que tanto el frontend como el panel de administración queden completamente inaccesibles. A diferencia de otros problemas que pueden afectar solo a ciertas páginas, un fallo de conexión con la base de datos deja tu sitio totalmente fuera de servicio.
Las causas pueden ir desde unas credenciales incorrectas en wp-config.php hasta un servidor de base de datos sobrecargado o caído. En esta guía cubrimos todas las posibilidades y cómo resolverlas.
Paso 1: Verificar las credenciales de la base de datos
Lo primero que debes comprobar son las credenciales de conexión a la base de datos en el archivo wp-config.php. Este archivo contiene cuatro datos esenciales: el nombre de la base de datos (DB_NAME), el usuario (DB_USER), la contraseña (DB_PASSWORD) y el servidor (DB_HOST).
Accede a tu servidor por FTP y abre wp-config.php. Compara los valores de estas constantes con las credenciales reales de tu base de datos, que puedes verificar desde el panel de control de tu hosting (cPanel, Plesk, etc.). Es habitual que las credenciales cambien después de una migración o que el proveedor de hosting las modifique por motivos de seguridad.
Presta especial atención al valor de DB_HOST. Mientras que la mayoría de hosting utilizan "localhost", algunos proveedores requieren una dirección específica como una IP interna o un nombre de host con puerto. Verifica este dato en la documentación de tu proveedor.
Paso 2: Comprobar que el servidor MySQL está funcionando
Si las credenciales son correctas, el problema puede ser que el servidor MySQL esté caído o no esté respondiendo. Esto es especialmente común en servidores compartidos donde los recursos son limitados y un pico de tráfico en otra cuenta puede afectar al servicio de base de datos.
Para verificar si MySQL está funcionando, intenta acceder a phpMyAdmin desde tu panel de hosting. Si phpMyAdmin tampoco puede conectar con la base de datos, el problema está en el servidor MySQL y no en WordPress. En este caso, contacta inmediatamente con tu proveedor de hosting.
Si tienes acceso SSH, puedes comprobar el estado del servicio MySQL con el comando correspondiente a tu sistema operativo. En muchos casos, simplemente reiniciar el servicio MySQL resuelve el problema.
Paso 3: Reparar la base de datos de WordPress
Si MySQL funciona pero WordPress sigue sin poder conectar, es posible que una o varias tablas de la base de datos estén corruptas. WordPress incluye una función de reparación integrada que puedes activar añadiendo la constante WP_ALLOW_REPAIR con valor true en wp-config.php.
Una vez añadida esta línea, accede a la URL tusitio.com/wp-admin/maint/repair.php. Verás dos opciones: "Reparar base de datos" y "Reparar y optimizar base de datos". Te recomendamos usar la segunda opción, que además de reparar las tablas dañadas, optimiza la estructura para mejorar el rendimiento.
Importante: una vez reparada la base de datos, elimina la línea WP_ALLOW_REPAIR de wp-config.php. Dejar esta opción activa es un riesgo de seguridad porque la página de reparación es accesible sin autenticación.
Paso 4: Problemas de recursos del servidor
En hosting compartido, el error de conexión a la base de datos puede ocurrir cuando tu sitio excede los límites de conexiones simultáneas a MySQL. Cada visitante que accede a tu web abre una o varias conexiones a la base de datos, y si muchos acceden al mismo tiempo, puedes alcanzar el límite.
Los plugins que realizan muchas consultas a la base de datos (como algunos plugins de estadísticas, cachés mal configurados o constructores visuales pesados) pueden agravar este problema al multiplicar el número de conexiones necesarias por cada visita.
- Límite de conexiones simultáneas a MySQL agotado
- Servidor de base de datos sobrecargado por otras cuentas (hosting compartido)
- Tablas de la base de datos corruptas o con errores
- Disco del servidor lleno impidiendo escrituras en MySQL
- Proceso de backup en ejecución bloqueando la base de datos
- Cambio de contraseña del usuario MySQL sin actualizar wp-config.php
Cómo prevenir futuros errores de base de datos
La prevención es la mejor estrategia para evitar que el error de conexión con la base de datos vuelva a ocurrir. Implementar un sistema de backups automáticos diarios es fundamental, ya que te permitirá restaurar la base de datos rápidamente en caso de corrupción.
Optimiza tu base de datos regularmente eliminando revisiones antiguas de entradas, comentarios de spam, opciones transitorias caducadas y tablas huérfanas dejadas por plugins desinstalados. Plugins como WP-Optimize o Advanced Database Cleaner pueden automatizar esta tarea.
Si tu sitio recibe mucho tráfico, considera utilizar un sistema de caché que reduzca las consultas a la base de datos. Un plugin de caché bien configurado puede reducir las conexiones a MySQL en un 80% o más, minimizando la posibilidad de alcanzar los límites del servidor.
Puntos clave
- Verifica siempre las credenciales en wp-config.php como primer paso, especialmente tras migraciones o cambios de hosting.
- Comprueba si MySQL está funcionando intentando acceder a phpMyAdmin desde tu panel de hosting.
- Usa la función de reparación integrada de WordPress para tablas corruptas, pero recuerda desactivarla después.
- Los límites de conexiones simultáneas en hosting compartido pueden causar este error en momentos de alto tráfico.
- Implementa caché y optimización de base de datos para prevenir futuros problemas de conexión.
¿Tu WordPress no conecta con la base de datos?
Diagnosticamos y resolvemos errores de conexión con la base de datos en tiempo récord. Con nuestro servicio de mantenimiento, monitorizamos tu base de datos 24/7 para prevenir problemas antes de que ocurran.
Solicitar presupuesto