Cómo resolver el error 'Error establishing a database connection'
¿Qué significa "Error establishing a database connection"?
Vamos a empezar por lo básico. Si estás viendo este mensaje en tu pantalla, significa que WordPress no puede conectarse a la base de datos donde se almacenan todos tus artículos, páginas, comentarios y configuraciones. Es uno de los errores más comunes y, aunque parezca dramático, casi siempre tiene solución en pocos minutos.
Imagina que tu web es una tienda física: el error establishing database connection sería como si la puerta del almacén estuviera cerrada y nadie pudiera sacar los productos para ponerlos en los estantes. El sitio no está roto, pero no puede mostrar nada porque le falta la información que necesita.
Este error puede aparecer de varias formas: a veces verás el mensaje exacto "Error establishing a database connection", otras veces un texto más largo, y en ocasiones simplemente una página en blanco. También puede afectar al panel de administración (wp-admin), impidiendo que entres a tu escritorio.
¿Por qué ocurre este error en WordPress?
Antes de lanzarnos a solucionar el error base de datos wordpress, es importante entender las causas más habituales. De esta forma, sabrás por dónde empezar a buscar:
- Credenciales incorrectas: La información de acceso a la base de datos (usuario, contraseña, nombre de la BD o servidor) no coincide con la real.
- Servidor de base de datos caído: El servicio MySQL o MariaDB no está funcionando en tu hosting.
- Problemas de conexión: El servidor web no puede alcanzar al servidor de la base de datos por problemas de red o firewall.
- Base de datos corrupta: Las tablas internas de WordPress están dañadas.
- Límites de recursos superados: Tu cuenta de hosting ha excedido el límite de conexiones o de memoria.
- Cambios recientes: Si acabas de migrar tu web, cambiar la contraseña de la BD o modificar archivos, puede que algo se haya configurado mal.
Guía paso a paso para solucionar el error
Vamos a ir de lo más simple a lo más complejo. Sigue estos pasos en orden, porque así ahorrarás tiempo y esfuerzo.
1. Comprueba tu archivo wp-config.php
Este es el archivo más importante para la conexión. Se encuentra en la raíz de tu instalación de WordPress, junto a carpetas como wp-content o wp-admin. Puedes acceder a él mediante el administrador de archivos de tu hosting o mediante FTP (con programas como FileZilla).
Abre el archivo wp-config.php y busca estas líneas:
define( 'DB_NAME', 'tu_base_de_datos' );
define( 'DB_USER', 'tu_usuario' );
define( 'DB_PASSWORD', 'tu_contraseña' );
define( 'DB_HOST', 'localhost' );
Verifica que estos datos sean correctos. Si no los recuerdas, puedes encontrarlos en el panel de control de tu hosting (cPanel, Plesk, Syspanel, etc.). En el caso de usar Syspanel (el panel de control que gestiona tus sitios web), recuerda que el acceso se realiza a través del puerto 2106 (por ejemplo: http://tudominio.com:2106), y ahí podrás ver la sección de bases de datos.
[TIP] Si acabas de cambiar la contraseña de la base de datos desde tu panel de hosting, asegúrate de actualizarla también en wp-config.php. Este es el motivo más común del error establishing database connection tras un cambio de contraseña.
2. Verifica que el servidor de base de datos esté activo
A veces el problema no está en tu WordPress, sino en el servicio de base de datos. Esto puede pasar especialmente en hosting compartido o en servidores VPS.
- Si usas Syspanel, ve a la sección de servicios o procesos y comprueba que
MySQLoMariaDBestén en ejecución. - En cPanel, busca el icono de "MySQL Databases" o "Remote MySQL" para ver el estado.
- Si tienes acceso por SSH, puedes ejecutar
systemctl status mysql(omariadb) para ver si está activo.
Si el servicio está caído, intenta reiniciarlo desde tu panel. En Syspanel, suele haber un botón de reinicio en la sección de servicios.
[WARNING] Si no te sientes cómodo tocando servicios del sistema, contacta con tu proveedor de hosting. Es mejor pedir ayuda que arriesgarse a romper algo más.
3. Revisa el host de la base de datos
El valor DB_HOST suele ser localhost, pero en algunos hosting no lo es. Por ejemplo:
- En algunos servidores gestionados, el host puede ser algo como
mysql.tudominio.como una IP específica. - Si tienes la base de datos en un servidor separado, necesitarás la IP o el nombre del servidor.
Consulta la documentación de tu hosting o el panel de control. En Syspanel, cuando creas una base de datos, te indica exactamente qué valor debes usar para DB_HOST.
[INFO] Si tu web funcionaba antes y ahora no, es poco probable que el host haya cambiado. Pero si estás migrando, verifica este dato con cuidado.
4. Repara la base de datos de WordPress
WordPress tiene un modo de reparación integrado que puede arreglar tablas dañadas. Para activarlo:
- Añade esta línea a tu archivo
wp-config.php, justo antes de la línea que dice/* That's all, stop editing! */:
define('WP_ALLOW_REPAIR', true);
-
Guarda el archivo y visita esta URL en tu navegador:
https://tudominio.com/wp-admin/maint/repair.php -
Verás una pantalla con opciones para reparar la base de datos. Haz clic en "Reparar base de datos".
-
Cuando termine, elimina esa línea de
wp-config.phpinmediatamente, ya que de lo contrario cualquiera podría acceder a esa herramienta.
[WARNING] Este método es seguro, pero no lo dejes activo más tiempo del necesario. Es una puerta de entrada que no quieres dejar abierta.
5. Comprueba los límites de tu plan de hosting
Muchas veces, el error establishing database connection aparece cuando tu sitio supera los recursos asignados. Esto es común en hosting compartido barato o cuando tienes muchos plugins que hacen consultas pesadas.
- Revisa el uso de CPU y memoria en tu panel de control.
- Si ves que estás al límite, considera optimizar tu web (menos plugins, caché, etc.) o contratar un plan superior.
- En Syspanel, puedes ver el consumo de recursos en tiempo real desde el panel principal.
[TIP] Si el error aparece solo en horas punta de tráfico, es muy probable que sea un problema de recursos. Una buena caché y una CDN pueden aliviar mucha carga.
6. Prueba con otro usuario de base de datos
A veces el usuario de la BD tiene permisos incompletos. Puedes intentar:
- Crear un nuevo usuario en tu panel de control de bases de datos.
- Asignarle todos los privilegios sobre la base de datos de tu WordPress.
- Actualizar
wp-config.phpcon estos nuevos datos.
Esto es especialmente útil si has importado una base de datos y los permisos no se han configurado correctamente.
7. Comprueba los logs del servidor
Los logs son el diario de lo que pasa en tu servidor. Ahí encontrarás pistas valiosas sobre por qué falla la conexión.
- En Syspanel, busca la sección de "Logs" o "Registros" y filtra por fecha.
- En cPanel, suele estar en "Error Logs" o "Raw Access Logs".
- Si tienes acceso SSH, revisa
/var/log/mysql/error.logo/var/log/mysql/mysql.log.
Busca errores como Access denied for user, Can't connect to MySQL server o Too many connections. Cada uno te dará una pista diferente.
8. Restablece la contraseña de la base de datos
Si sospechas que la contraseña puede haberse corrompido o cambiado sin que lo sepas, restablécela desde tu panel de control:
- Ve a la sección de bases de datos.
- Busca tu base de datos y el usuario asociado.
- Cambia la contraseña por una nueva.
- Actualiza
wp-config.phpcon la nueva contraseña.
[WARNING] Al cambiar la contraseña, ten cuidado de no romper otras aplicaciones que usen la misma base de datos. Si solo usas WordPress, no hay problema.
9. Verifica si el problema es de tu proveedor
Antes de volverte loco, comprueba si el problema es generalizado. Puedes:
- Visitar sitios como downdetector para ver si tu hosting tiene incidencias reportadas.
- Contactar con el soporte de tu proveedor y preguntar si hay algún problema conocido.
- Revisar las redes sociales de tu hosting por si hay avisos de mantenimiento.
A veces el error base de datos wordpress no es culpa tuya, sino de una caída general del servicio. En ese caso, solo queda esperar.
10. Restaura desde una copia de seguridad
Si nada de lo anterior funciona, puede que la base de datos esté dañada de forma irreversible. En ese caso, la solución más rápida es restaurar desde una copia de seguridad reciente.
- La mayoría de hosting incluyen copias de seguridad automáticas. En Syspanel, busca la sección de "Backups" o "Copias de seguridad".
- Si tienes una copia local (por ejemplo, con plugins como UpdraftPlus), puedes restaurarla desde ahí.
[TIP] Si restauras, ten en cuenta que perderás los cambios hechos desde la fecha de la copia. Por eso es importante tener copias frecuentes.
Preguntas frecuentes sobre este error
¿Por qué mi WordPress muestra este error después de migrar?
Es muy común. Al migrar, los datos de conexión cambian y es fácil equivocarse en el wp-config.php. Revisa los pasos 1 y 3 de esta guía con especial atención.
¿Puedo evitar este error en el futuro?
Sí, con estas buenas prácticas:
- Mantén copias de seguridad automáticas y frecuentes.
- No cambies contraseñas de BD sin actualizar
wp-config.phpinmediatamente. - Monitorea el uso de recursos de tu hosting.
- Mantén WordPress, temas y plugins actualizados.
- Usa un plugin de caché para reducir la carga de la base de datos.
¿El error puede aparecer en el panel de administración también?
Sí, y de hecho es más grave porque no podrás acceder a ninguna función de WordPress. Las soluciones son las mismas; la única diferencia es que no podrás entrar a wp-admin, así que tendrás que trabajar con FTP o el administrador de archivos.
¿Qué hago si no tengo acceso a FTP ni al panel de control?
Entonces tu única opción es contactar con el soporte de tu hosting. Ellos tienen acceso directo al servidor y podrán diagnosticar el problema. Asegúrate de describirles exactamente qué error ves y desde cuándo ocurre.
Conclusión
El error establishing database connection puede parecer aterrador, pero como has visto, en la mayoría de los casos tiene una solución sencilla. La clave está en ir paso a paso, desde lo más básico (credenciales) hasta lo más complejo (restauración), y no entrar en pánico.
Recuerda siempre tener una copia de seguridad reciente, porque eso te dará tranquilidad ante cualquier imprevisto. Y si usas Syspanel, recuerda que puedes acceder a la gestión de bases de datos y servicios a través del puerto 2106, donde tendrás todas las herramientas necesarias para diagnosticar y solucionar este tipo de problemas.
Si después de seguir todos estos pasos el error persiste, no dudes en contactar con tu proveedor de hosting. Es posible que haya un problema a nivel de servidor que solo ellos puedan resolver. Mucha suerte y que tu web vuelva a estar online cuanto antes.
