Solucionar el error 'Error al establecer conexión con la base de datos' en WordPress
¡Hola! Si estás leyendo esto, es muy probable que te hayas encontrado con el temido mensaje "Error al establecer conexión con la base de datos" en tu sitio WordPress. No te preocupes, es uno de los errores más comunes y, por suerte, casi siempre tiene solución. En esta guía extensa y detallada, te explicaré paso a paso cómo solucionar el error conexión base datos WordPress, desde lo más básico hasta soluciones más avanzadas. Vamos a ello.
¿Qué significa este error y por qué ocurre?
Cuando ves el mensaje "Error al establecer conexión con la base de datos", WordPress te está diciendo que no puede comunicarse con la base de datos donde se almacenan tus entradas, páginas, usuarios y configuraciones. Sin esa conexión, tu web no puede funcionar.
Las causas más frecuentes de este error son:
- Credenciales incorrectas en el archivo de configuración
wp-config.php. - El servidor de base de datos está caído o no responde.
- Problemas con el nombre del servidor (host) de la base de datos.
- Corrupción de la base de datos.
- Problemas de permisos o de configuración del hosting.
- Conflictos con plugins o temas (menos común, pero posible).
A continuación, te explico cómo solucionar error base datos WordPress con métodos ordenados del más sencillo al más avanzado.
Paso 1: Verifica las credenciales en wp-config.php
El archivo wp-config.php es el corazón de la configuración de WordPress. Aquí es donde se guardan los datos de acceso a la base de datos. Un error tipográfico o un cambio reciente puede romper la conexión.
¿Cómo acceder al archivo?
- Conéctate a tu hosting mediante FTP (FileZilla, por ejemplo) o al panel de control de tu hosting (cPanel, Syspanel, etc.).
- Busca la carpeta raíz de tu instalación de WordPress (normalmente
public_htmlowww). - Localiza el archivo
wp-config.php. Ábrelo con un editor de texto (Bloc de notas, Sublime Text, etc.).
¿Qué debes revisar?
Dentro del archivo, busca estas líneas:
define('DB_NAME', 'nombre_de_tu_base');
define('DB_USER', 'usuario_de_tu_base');
define('DB_PASSWORD', 'contraseña_de_tu_base');
define('DB_HOST', 'localhost');
- DB_NAME: El nombre exacto de tu base de datos.
- DB_USER: El usuario que tiene acceso a esa base.
- DB_PASSWORD: La contraseña de ese usuario.
- DB_HOST: Normalmente es
localhost, pero algunos hostings usan direcciones comomysql.tudominio.como127.0.0.1.
[TIP] Si no recuerdas tus credenciales, puedes consultarlas en el panel de control de tu hosting. Por ejemplo, en Syspanel (accesible por el puerto 2106), ve a la sección de bases de datos y allí encontrarás los datos.
Si encuentras algún error, corrígelo y guarda el archivo. Luego recarga tu web.
Paso 2: Comprueba que el servidor de base de datos esté funcionando
A veces el problema no está en tus credenciales, sino en que el servidor de bases de datos (MySQL/MariaDB) está detenido o sobrecargado.
En un hosting compartido
Si usas un hosting compartido, el soporte técnico suele reiniciar el servicio rápidamente. Puedes contactarlos o, si tienes acceso a Syspanel, intenta lo siguiente:
- Accede a Syspanel a través de
https://tudominio.com:2106. - Ve a la sección de Servicios o Bases de datos.
- Busca el servicio de MySQL/MariaDB y verifica su estado. Si aparece como "detenido", intenta reiniciarlo.
[WARNING] No todos los paneles permiten reiniciar servicios directamente. Si no ves la opción, contacta al soporte de tu hosting.
En un VPS o servidor dedicado
Si tienes acceso por SSH, puedes ejecutar estos comandos:
# Verificar el estado del servicio
sudo systemctl status mysql
# o
sudo systemctl status mariadb
# Reiniciar el servicio
sudo systemctl restart mysql
Si el servicio no se inicia, revisa los logs de error (normalmente en /var/log/mysql/error.log).
Paso 3: Verifica el nombre del servidor (DB_HOST)
Aunque la mayoría de los hostings usan localhost, algunos proveedores (como DreamHost, WP Engine o ciertos configuraciones con Syspanel) utilizan un nombre de servidor específico.
¿Cómo saber cuál es tu DB_HOST?
- Revisa la documentación de tu hosting o el panel de control.
- En Syspanel, cuando creas una base de datos, te muestra el host (suele ser
localhosto una IP como127.0.0.1). - Si tienes dudas, prueba cambiando
DB_HOSTa127.0.0.1(la IP de localhost) o alocalhost:3306(el puerto por defecto).
[INFO] En algunos casos, el host puede ser algo como
mysql.tudominio.com. Si lo cambias, asegúrate de que el nombre de dominio resuelva correctamente.
Paso 4: Repara la base de datos (si está corrupta)
A veces la base de datos se corrompe parcialmente, lo que impide la conexión. WordPress tiene una función de reparación incorporada.
Activar la reparación automática
- Abre tu archivo
wp-config.php. - Añade la siguiente línea justo antes de la línea que dice
/* That's all, stop editing! Happy publishing. */:
define('WP_ALLOW_REPAIR', true);
- Guarda el archivo y luego visita esta URL en tu navegador:
https://tudominio.com/wp-admin/maint/repair.php - Verás dos opciones: "Reparar base de datos" y "Reparar y optimizar base de datos". Elige la primera (o la segunda si quieres también optimizar).
- Una vez terminado, elimina la línea que añadiste del
wp-config.phppor seguridad.
[WARNING] No dejes esa línea permanentemente, ya que cualquiera podría acceder a la reparación. Es una medida temporal.
Paso 5: Revisa los permisos del usuario de la base de datos
El usuario de la base de datos debe tener permisos suficientes para conectarse y realizar operaciones. Si los permisos se han modificado (por ejemplo, después de una migración), puede fallar la conexión.
Cómo verificar permisos (desde phpMyAdmin o línea de comandos)
- Accede a phpMyAdmin desde tu panel de control (en Syspanel, suele estar en la sección de bases de datos).
- Selecciona tu base de datos.
- Ve a la pestaña Privilegios y busca tu usuario.
- Asegúrate de que tenga todos los privilegios marcados (SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, etc.). Si no, puedes editarlos y conceder todos.
Si usas línea de comandos:
GRANT ALL PRIVILEGES ON tu_base.* TO 'tu_usuario'@'localhost';
FLUSH PRIVILEGES;
Paso 6: Verifica que el archivo wp-config.php no tenga errores de sintaxis
Un error de sintaxis en el wp-config.php puede impedir que WordPress cargue correctamente la configuración de la base de datos.
¿Cómo detectarlo?
- Abre el archivo en un editor de texto con resaltado de sintaxis (como VS Code, Sublime Text o Notepad++).
- Busca errores como comillas sin cerrar, puntos y comas faltantes, o caracteres extraños.
- Presta especial atención a las líneas que contienen las credenciales y la definición de
DB_HOST.
[TIP] Si has editado el archivo recientemente, puedes compararlo con una copia de seguridad o con el archivo original de WordPress (puedes descargar una instalación limpia desde wordpress.org).
Paso 7: Desactiva plugins y temas (si el error es intermitente)
Aunque es raro, algunos plugins o temas mal codificados pueden interferir con la conexión a la base de datos. Si el error aparece solo a veces, puede ser un conflicto.
Cómo desactivar todo sin acceso al panel
Si no puedes acceder al panel de administración, hazlo manualmente:
- Conéctate por FTP.
- Ve a la carpeta
wp-content. - Renombra la carpeta
pluginsaplugins_old. Esto desactivará todos los plugins. - Si el error desaparece, el problema está en algún plugin. Ve renombrándolos de uno en uno para identificar al culpable.
- Si el error persiste, renombra la carpeta
themesathemes_old(WordPress usará un tema por defecto, como Twenty Twenty-Four).
Paso 8: Comprueba la configuración del firewall o del servidor
A veces, el firewall del servidor bloquea las conexiones a la base de datos, especialmente si estás usando un host remoto (no localhost).
En Syspanel o cPanel
- Revisa la configuración de Firewall o ModSecurity. Si hay reglas que bloquean consultas SQL, pueden causar errores.
- Si usas un CDN como Cloudflare, asegúrate de que no esté bloqueando IPs de bases de datos.
Paso 9: Restaura desde una copia de seguridad
Si has probado todo y nada funciona, la solución más rápida es restaurar tu sitio desde una copia de seguridad reciente.
¿Cómo hacerlo?
- Accede a tu panel de control (Syspanel, cPanel, etc.).
- Busca la sección de Copias de seguridad o Backups.
- Selecciona una copia de seguridad de la base de datos y los archivos.
- Restaura ambos.
[INFO] Si no tienes copias de seguridad, considera usar un plugin como UpdraftPlus o contactar a tu hosting para ver si ellos tienen una.
Preguntas frecuentes (FAQ)
¿Por qué aparece "Error al establecer conexión con la base de datos" después de migrar mi web?
Es muy común. Las credenciales suelen cambiar al migrar. Revisa el wp-config.php y actualiza DB_NAME, DB_USER, DB_PASSWORD y DB_HOST con los nuevos datos.
¿Puedo solucionar este error sin acceso a FTP?
Sí, si tu hosting tiene un administrador de archivos (como en Syspanel o cPanel), puedes editar el wp-config.php desde allí. También puedes usar phpMyAdmin para reparar la base de datos.
¿El error puede deberse a un ataque?
Es posible. Si tu base de datos ha sido modificada maliciosamente, puede corromperse. Cambia todas las contraseñas (base de datos, FTP, WordPress) y restaura desde una copia limpia.
¿Cómo evito este error en el futuro?
- Realiza copias de seguridad periódicas.
- Mantén WordPress, plugins y temas actualizados.
- Usa contraseñas seguras y cámbialas ocasionalmente.
- Monitorea el estado de tu servidor (puedes usar plugins de salud del sitio).
Conclusión
El error conexión base datos WordPress puede ser frustrante, pero como has visto, la mayoría de las veces se soluciona con una revisión simple de las credenciales o reiniciando el servicio. Sigue los pasos en orden: primero verifica el wp-config.php, luego el servidor, después repara la base de datos, y si todo falla, contacta a tu hosting.
Recuerda que en Syspanel (puerto 2106) tienes herramientas para gestionar bases de datos y servicios. Y si el problema persiste, no dudes en pedir ayuda a tu proveedor de hosting: ellos tienen acceso a los logs del servidor y pueden detectar problemas más profundos.
Espero que esta guía te haya sido útil. ¡Buena suerte y que tu web vuelva a funcionar pronto!
