El error "Error establishing a database connection" (Error al establecer conexión con la base de datos) es uno de los más frustrantes en WordPress. Tu sitio queda completamente inaccesible hasta que se resuelve. Esta guía te muestra cómo solucionarlo paso a paso.
¿Qué Significa Este Error?
Este error aparece cuando WordPress no puede comunicarse con la base de datos MySQL. Sin esta conexión, WordPress no puede funcionar porque toda la información (posts, páginas, usuarios, configuración) está en la base de datos.
Mensaje típico:
"Error establishing a database connection"
o en español:
"Error al establecer una conexión con la base de datos"
Causas posibles
- Credenciales incorrectas en wp-config.php
- Servidor MySQL caído o sobrecargado
- Base de datos corrupta
- Límite de conexiones alcanzado
- Host de base de datos incorrecto
- Base de datos eliminada
Diagnóstico Inicial
¿El error aparece solo en el frontend o también en wp-admin?
| Solo frontend: | Posible problema de caché o tabla de opciones corrupta |
| Frontend + wp-admin: | Problema real de conexión a la base de datos |
Verificar si el problema es general
- ¿Otros sitios en el mismo hosting funcionan?
- ¿El error es intermitente o constante?
- ¿Coincide con algún cambio reciente?
Solución 1: Verificar Credenciales en wp-config.php
La causa más común es que las credenciales de la base de datos son incorrectas.
Paso 1: Acceder a wp-config.php
- Conecta por FTP a tu hosting
- Navega a la carpeta raíz de WordPress
- Descarga o edita el archivo
wp-config.php
Paso 2: Verificar las credenciales
Busca estas líneas y compara con los datos de tu hosting:
// Nombre de la base de datos
define( 'DB_NAME', 'nombre_base_datos' );
// Usuario de la base de datos
define( 'DB_USER', 'usuario_bd' );
// Contraseña del usuario
define( 'DB_PASSWORD', 'contraseña_segura' );
// Servidor de base de datos (normalmente localhost)
define( 'DB_HOST', 'localhost' );
Paso 3: Obtener los datos correctos
- cPanel: Bases de datos MySQL → Ver bases de datos y usuarios
- Plesk: Bases de datos → Tu base de datos → Info de conexión
- Hostinger hPanel: Bases de datos → Gestionar
- Espacio extra antes o después de las credenciales
- Comillas incorrectas (usar ' no ")
- Prefijo del usuario incorrecto (hosting añade prefijo: usuario_nombreusuario)
Paso 4: Probar conexión manualmente
Crea un archivo test-db.php en la raíz:
<?php
\$link = mysqli_connect('localhost', 'usuario', 'contraseña', 'base_datos');
if (!\$link) {
die('Error de conexión: ' . mysqli_connect_error());
}
echo 'Conexión exitosa. Host: ' . mysqli_get_host_info(\$link);
mysqli_close(\$link);
?>
Accede a tudominio.com/test-db.php y verifica el resultado. Elimina el archivo después.
Solución 2: Comprobar Servidor MySQL
El servidor MySQL puede estar caído o sobrecargado.
Verificaciones
- ¿phpMyAdmin funciona? Si no carga, MySQL está caído
- ¿Otros sitios en el mismo servidor funcionan?
- ¿El hosting está experimentando problemas? Revisa su página de estado
Acciones
- Accede a phpMyAdmin desde tu panel de hosting
- Si no carga o da error, el servidor MySQL tiene problemas
- Contacta a tu hosting para que lo reinicien
Si tienes acceso SSH/VPS
# Verificar estado de MySQL
sudo systemctl status mysql
# Reiniciar MySQL
sudo systemctl restart mysql
# Ver logs de errores
sudo tail -f /var/log/mysql/error.log
Solución 3: Reparar Base de Datos
Las tablas de la base de datos pueden corromperse, especialmente después de caídas del servidor.
Método 1: Herramienta de reparación de WordPress
- Añade esta línea a
wp-config.php(antes de "That's all"):
define( 'WP_ALLOW_REPAIR', true );
- Visita:
tudominio.com/wp-admin/maint/repair.php - Haz clic en "Reparar base de datos"
- Opcionalmente, "Reparar y optimizar"
- ¡Importante! Elimina la línea de wp-config.php después
Método 2: phpMyAdmin
- Accede a phpMyAdmin
- Selecciona tu base de datos
- Selecciona todas las tablas (checkbox)
- En el menú desplegable, elige "Reparar tabla"
Método 3: WP-CLI (si tienes acceso SSH)
wp db repair
Solución 4: Verificar Host de la Base de Datos
No todos los hostings usan localhost como host de la base de datos.
Hosts comunes por proveedor
| Hosting | DB_HOST típico |
|---|---|
| Hostinger | localhost |
| SiteGround | localhost |
| Bluehost | localhost |
| GoDaddy | nombre.db.1and1.com (varía) |
| 1&1 IONOS | db12345678.hosting-data.io |
| Cloudways | localhost |
| AWS RDS | instancia.xxx.us-east-1.rds.amazonaws.com |
Verifica en tu panel de hosting cuál es el host correcto para la conexión a la base de datos.
Solución 5: Límite de Conexiones
En hosting compartido, hay un límite de conexiones simultáneas a la base de datos. Si tu sitio tiene mucho tráfico o plugins mal optimizados, puedes alcanzarlo.
Síntomas
- El error es intermitente (aparece y desaparece)
- Ocurre en horas de más tráfico
- El error dice "Too many connections"
Soluciones
- Esperar: Las conexiones se liberan automáticamente
- Optimizar: Usa plugin de caché para reducir consultas a BD
- Actualizar hosting: Planes superiores tienen más conexiones
- Persistent connections: Añade a wp-config.php:
define( 'WP_ALLOW_PERSISTENT_DB_CONNECTION', true );
Plugins que causan muchas conexiones
- Plugins de estadísticas en tiempo real
- Plugins de chat en vivo
- Plugins de relacionados mal configurados
- Constructores de páginas con muchas queries
Solución 6: Restaurar desde Backup
Si nada funciona, la base de datos puede estar severamente corrupta o haber sido eliminada.
Verificar si la base de datos existe
- Accede a phpMyAdmin
- ¿Aparece tu base de datos en la lista de la izquierda?
- Si no aparece, ha sido eliminada
Restaurar base de datos
- Desde UpdraftPlus: Restaura solo la base de datos
- Desde hosting: La mayoría ofrece backups automáticos
- Desde archivo .sql: Importa en phpMyAdmin
Si no tienes backup
- Contacta a tu hosting - pueden tener backups
- Revisa si tienes copias locales o en staging
- Último recurso: reinstalar WordPress y recrear contenido
Prevención: Evitar Este Error en el Futuro
- ✅ Configura backups automáticos diarios
- ✅ Usa un plugin de caché como WP Rocket o LiteSpeed Cache
- ✅ Limpia la base de datos regularmente (WP-Optimize)
- ✅ No instales plugins mal desarrollados
- ✅ Monitoriza tu sitio con servicios como UptimeRobot
- ✅ Considera hosting de mayor calidad si tienes mucho tráfico
Preguntas Frecuentes
¿Por qué me da este error después de migrar WordPress?
Probablemente las credenciales en wp-config.php siguen apuntando al servidor antiguo. Actualiza DB_NAME, DB_USER, DB_PASSWORD y DB_HOST con los datos del nuevo hosting.
¿Puedo acceder al contenido sin conexión a la base de datos?
No de forma directa. Todo el contenido de WordPress está en la base de datos. Sin conexión, solo puedes acceder a los archivos por FTP.
¿Por qué el error aparece de forma intermitente?
Suele ser por límite de conexiones alcanzado o servidor MySQL sobrecargado. Implementa caché para reducir las consultas a la base de datos.
¿Este error afecta al SEO?
Sí, significativamente. Si Googlebot encuentra tu sitio caído repetidamente, puede desindexar páginas. Soluciona el error lo antes posible.