WordPress: ¿Cómo solucionar el error 'Error establishing a database connection'?
¿Tu sitio web en WordPress muestra el temido mensaje "Error establishing a database connection"? No entres en pánico. Este es uno de los errores más comunes en WordPress y, afortunadamente, casi siempre tiene solución. En esta guía detallada, te explicaré paso a paso cómo diagnosticar y solucionar este error conexión base datos WordPress, incluso si no eres un experto técnico.
Este artículo está diseñado para ayudarte a resolver el WordPress database error de forma clara y sin complicaciones. Al final, tendrás las herramientas para solucionar WordPress y recuperar tu sitio en pocos minutos.
¿Qué significa este error?
El mensaje "Error establishing a database connection" aparece cuando WordPress no puede comunicarse con la base de datos donde se almacena todo tu contenido (entradas, páginas, usuarios, configuraciones, etc.). Sin esa conexión, tu sitio no puede cargar nada.
Las causas más frecuentes son:
- Credenciales incorrectas en el archivo
wp-config.php. - El servidor de base de datos (MySQL/MariaDB) está caído o no responde.
- Corrupción en la base de datos (por ejemplo, tras una actualización fallida).
- Problemas de permisos o configuración en el hosting.
- Ataques o sobrecarga del servidor.
[WARNING] Si ves este error, no intentes recargar la página muchas veces. Puede empeorar la situación si el problema es de sobrecarga.
Primeros pasos: diagnóstico rápido
Antes de tocar archivos, haz estas comprobaciones básicas:
-
Verifica si el problema es general o solo tuyo.
Usa herramientas como "Down For Everyone Or Just Me" para saber si el sitio está caído para todos o solo para ti. -
Revisa el panel de control de tu hosting.
Accede a tu panel (cPanel, Syspanel, Plesk, etc.) y mira si el servicio de base de datos (MySQL/MariaDB) está activo. En Syspanel, por ejemplo, puedes ver el estado desde el puerto 2106. -
Prueba con otro navegador o dispositivo.
A veces es un problema de caché local.
Si después de esto el error persiste, sigue los pasos detallados a continuación.
Paso 1: Verifica las credenciales en wp-config.php
El archivo wp-config.php contiene los datos de acceso a tu base de datos. Un error común es que estos datos hayan cambiado (por ejemplo, tras migrar el sitio o cambiar la contraseña de la base de datos).
Cómo acceder al archivo
- Conéctate a tu servidor mediante FTP (FileZilla, por ejemplo) o al administrador de archivos de tu hosting.
- Navega hasta la carpeta raíz de WordPress (normalmente
public_htmlowww). - Busca el archivo
wp-config.php. Si no lo ves, puede estar oculto; activa la opción "Mostrar archivos ocultos".
Qué revisar
Abre el archivo con un editor de texto (como Notepad++ o el editor del panel) y busca estas líneas:
define('DB_NAME', 'nombre_de_tu_base');
define('DB_USER', 'usuario_de_la_base');
define('DB_PASSWORD', 'contraseña');
define('DB_HOST', 'localhost');
- DB_NAME: El nombre de tu base de datos.
- DB_USER: El usuario asociado a esa base.
- DB_PASSWORD: La contraseña de ese usuario.
- DB_HOST: Normalmente es
localhost, pero algunos hostings usan algo comomysql.tudominio.com.
[TIP] Si usas Syspanel, puedes encontrar estas credenciales en la sección "Bases de datos" (puerto 2106). Copia exactamente los valores que aparecen allí.
Solución si están mal
- Si el nombre, usuario o contraseña son incorrectos, corrígelos con los datos correctos.
- Guarda el archivo y recarga tu sitio.
Si no tienes las credenciales, puedes generarlas desde tu panel de hosting. En Syspanel, ve a "Bases de datos" -> "Crear nueva" o "Ver detalles".
Paso 2: Comprueba que el servidor de base de datos esté funcionando
A veces el problema no es de WordPress, sino del servicio MySQL/MariaDB en el servidor.
Cómo verificarlo desde el panel de hosting
- En cPanel: Busca "MySQL Databases" o "phpMyAdmin". Si no puedes acceder, el servicio está caído.
- En Syspanel: Ingresa al panel (puerto 2106) y ve a "Servicios" o "Estado del servidor". Busca "MySQL" o "MariaDB". Debería aparecer como "Activo" o "Running".
[WARNING] Si el servicio está detenido, no podrás solucionarlo desde WordPress. Debes contactar a tu proveedor de hosting para que lo reinicien.
Cómo verificarlo desde SSH (si tienes acceso)
Si eres más técnico, conecta por SSH y ejecuta:
systemctl status mysql
# o
systemctl status mariadb
Si está inactivo, reinícialo con:
systemctl restart mysql
Si no tienes acceso SSH, salta al siguiente paso.
Paso 3: Repara la base de datos desde phpMyAdmin
Si las credenciales son correctas y el servidor funciona, la base de datos puede estar corrupta. WordPress incluye una función de reparación automática.
Cómo activar la reparación
- Conéctate a tu servidor y edita
wp-config.php. - Justo antes de la línea
/* That's all, stop editing! Happy publishing. */, agrega:
define('WP_ALLOW_REPAIR', true);
-
Guarda el archivo.
-
Accede a esta URL en tu navegador:
https://tudominio.com/wp-admin/maint/repair.php -
Verás dos opciones:
- Reparar base de datos (recomendado).
- Reparar y optimizar base de datos (más completo, pero tarda más).
-
Haz clic en el botón correspondiente y espera a que termine.
-
IMPORTANTE: Una vez reparada, elimina la línea que agregaste en
wp-config.php. Si la dejas, cualquiera podría reparar tu base de datos.
[INFO] Si no puedes acceder a esa URL, es posible que tu hosting bloquee el acceso. Prueba con otro método.
Paso 4: Revisa el archivo .htaccess (si usas caché o redirecciones)
Un .htaccess corrupto puede interferir con la conexión a la base de datos, aunque es menos común.
- Renombra el archivo
.htaccessen la raíz de WordPress a.htaccess_old. - Ve a tu panel de WordPress (si puedes acceder) y ve a "Ajustes" > "Enlaces permanentes". Haz clic en "Guardar cambios" para regenerar el archivo.
Si no puedes acceder al panel, crea un .htaccess nuevo con el contenido básico de WordPress:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Paso 5: Verifica los permisos de archivos y carpetas
Los permisos incorrectos pueden impedir que WordPress lea el archivo de configuración.
- Los archivos deben tener permisos 644 (o 640 en algunos hostings).
- Las carpetas deben tener permisos 755 (o 750).
Puedes cambiarlos desde el panel de archivos de tu hosting o con FTP. En Syspanel, usa el administrador de archivos (puerto 2106) para seleccionar todo y aplicar permisos.
[TIP] No cambies permisos a 777, ya que es inseguro. Si tu hosting lo exige, busca otra solución.
Paso 6: Comprueba si hay un plugin o tema conflictivo
A veces un plugin mal codificado o un tema corrupto puede romper la conexión a la base de datos.
Cómo desactivar plugins sin acceso al panel
- Conéctate por FTP o al administrador de archivos.
- Ve a
wp-content/plugins. - Renombra la carpeta de un plugin sospechoso (por ejemplo, cambia
mi-pluginami-plugin-desactivado). - Si no sabes cuál es, renombra toda la carpeta
pluginsaplugins_old. Esto desactivará todos los plugins. - Recarga tu sitio. Si funciona, el problema era un plugin. Ve activándolos uno por uno (renombrando las carpetas de vuelta) para identificar al culpable.
Para el tema
- Ve a
wp-content/themes. - Renombra la carpeta de tu tema activo (por ejemplo,
mi-temaami-tema-backup). - WordPress usará el tema por defecto (Twenty Twenty-Four o similar). Si el error desaparece, el tema es el problema.
Paso 7: Aumenta los límites de memoria de PHP
A veces el error aparece por falta de memoria PHP. Para solucionarlo, edita wp-config.php y agrega:
define('WP_MEMORY_LIMIT', '256M');
define('WP_MAX_MEMORY_LIMIT', '512M');
Guarda y recarga.
Paso 8: Contacta a tu proveedor de hosting
Si después de todos estos pasos el error persiste, el problema puede estar del lado del servidor:
- El servidor de base de datos está sobrecargado.
- Hay un firewall bloqueando la conexión.
- Tu cuenta ha superado los recursos permitidos.
[INFO] En Syspanel, puedes abrir un ticket de soporte desde el puerto 2106, sección "Soporte". Explica que ya verificaste las credenciales y el servicio.
FAQ: Preguntas frecuentes sobre el error
¿Puedo perder datos si reparo la base de datos?
No, la reparación solo corrige índices y tablas dañadas. Tus datos (entradas, páginas, usuarios) no se pierden.
¿Qué hago si no encuentro el archivo wp-config.php?
Puede estar oculto. Activa la opción "Mostrar archivos ocultos" en tu cliente FTP o en el administrador de archivos.
¿El error puede deberse a un ataque?
Sí, a veces los hackers modifican el archivo wp-config.php. Si ves líneas extrañas, restaura una copia de seguridad limpia.
¿Cómo evito que vuelva a ocurrir?
- Mantén WordPress, plugins y temas actualizados.
- Realiza copias de seguridad periódicas.
- Usa un hosting de calidad que monitoree los servicios.
Conclusión
El error "Error establishing a database connection" puede parecer aterrador, pero en la mayoría de los casos se soluciona en pocos minutos revisando las credenciales, reparando la base de datos o verificando el servidor. Sigue esta guía paso a paso y, si nada funciona, tu proveedor de hosting te ayudará.
Recuerda: la paciencia y el método son tus mejores aliados. ¡Buena suerte y que tu sitio vuelva a la vida pronto!
