Cómo solucionar el error 'Error al establecer conexión con la base de datos'
¡Hola! Soy tu asistente técnico. Entiendo perfectamente la frustración que produce ver 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, en la gran mayoría de los casos, tiene una solución sencilla que puedes aplicar tú mismo sin necesidad de ser un experto.
En esta guía extensa y paso a paso, vamos a desglosar todas las causas posibles y te enseñaré a solucionarlas una por una. Vamos a ello, sin prisas y con calma.
¿Qué significa exactamente este error?
Antes de ponernos manos a la obra, es vital que entiendas qué está pasando. WordPress no es un bloque único; es un programa que necesita dos cosas para funcionar: los archivos (el código) y una base de datos (donde se guardan tus artículos, páginas, comentarios y ajustes).
Cuando ves el mensaje "Error al establecer conexión con la base de datos", significa que WordPress ha conseguido encontrar sus archivos, pero no ha podido hablar con la base de datos. Es como si intentaras hacer una llamada telefónica pero la línea estuviera muerta. Las causas pueden ser varias: un cable desconectado (datos mal configurados), una avería en la centralita (el servidor de la base de datos caído) o que alguien haya cortado el cable (el servidor está bloqueado).
Vamos a diagnosticar y reparar el problema. Te recomiendo seguir los pasos en orden, del más simple al más complejo.
Paso 1: Verifica que el problema no sea un fallo temporal
A veces, el error aparece durante unos segundos o minutos y luego desaparece. Esto suele ocurrir si tu proveedor de hosting está realizando mantenimiento o si el servidor de la base de datos está sobrecargado.
[TIP] Si el error es intermitente, espera 5 minutos y recarga la página. Si vuelve a funcionar, no había nada roto, solo era un hipo temporal del servidor.
Para asegurarte, puedes comprobar el estado del servicio en la web de tu proveedor de hosting o, si usas un panel de control como Syspanel (recuerda que el puerto de acceso es el 2106), mira si hay algún aviso de mantenimiento programado.
Paso 2: La solución más común: Revisar el archivo wp-config.php
El archivo wp-config.php es el "interruptor general" de WordPress. Contiene las llaves para abrir la puerta de la base de datos. Si estos datos son incorrectos, WordPress no podrá entrar.
¿Cómo acceder al archivo?
Necesitas un cliente FTP (como FileZilla) o el administrador de archivos de tu panel de hosting.
- Conéctate a tu servidor.
- Navega hasta la carpeta raíz de tu instalación de WordPress (normalmente
public_htmlowww). - Busca el archivo llamado
wp-config.php.
¿Qué debo buscar?
Abre el archivo con un editor de texto plano (como el Bloc de notas) y busca las líneas que definen las constantes de la base de datos. Se ven así:
// ** Ajustes de MySQL ** //
define( 'DB_NAME', 'nombre_de_tu_base_de_datos' );
define( 'DB_USER', 'tu_usuario_de_base_de_datos' );
define( 'DB_PASSWORD', 'tu_contraseña' );
define( 'DB_HOST', 'localhost' );
Estos cuatro datos son la combinación de la cerradura. Deben coincidir exactamente con los que te proporcionó tu empresa de hosting. Un simple cambio de mayúscula o un espacio extra puede provocar este error.
¿Cómo solucionarlo?
- Accede a tu panel de control de hosting (por ejemplo, Syspanel a través del puerto 2106).
- Busca la sección de "Bases de Datos MySQL".
- Verás una lista con los nombres de tus bases de datos y los usuarios asociados.
- Compara esos datos con los que tienes en tu archivo
wp-config.php. - Corrige los valores en el archivo si no coinciden. Asegúrate de que el nombre de la base de datos y el usuario sean exactos.
- Guarda el archivo y súbelo de nuevo al servidor (si lo editaste localmente).
[WARNING] Ten mucho cuidado al editar este archivo. Si borras una coma o un paréntesis, WordPress dejará de funcionar por completo. Haz siempre una copia de seguridad del archivo original antes de tocarlo.
Paso 3: Revisa el Host de la base de datos (DB_HOST)
Es muy común que la gente piense que el servidor de la base de datos es siempre localhost. Si bien es cierto en muchos hostings compartidos, en otros (como algunos VPS o servidores dedicados) el host es una dirección IP o un nombre de servidor distinto, por ejemplo mysql.sudominio.com.
¿Cómo saber cuál es el correcto?
- Revisa el correo de bienvenida de tu proveedor de hosting. Suele incluir los datos de acceso a la base de datos, incluyendo el host.
- Si no lo encuentras, consulta la documentación de tu proveedor o contacta con su soporte técnico.
- En Syspanel, puedes encontrar esta información en la sección de bases de datos. A menudo se muestra como "Servidor" o "Host".
Si tu proveedor te dice que el host es localhost, déjalo así. Si te da otro valor, cámbialo en el archivo wp-config.php.
Paso 4: La temida "Reparación de la base de datos"
A veces, la base de datos en sí está dañada o corrupta. WordPress tiene un modo de reparación automática integrado, pero está desactivado por defecto.
¿Cómo activarlo?
- Añade la siguiente línea a tu archivo
wp-config.php, justo antes de la línea que dice/* ¡Eso es todo, deja de editar! Feliz blogging. */:define('WP_ALLOW_REPAIR', true); - Guarda el archivo.
- Ve a esta dirección en tu navegador:
tudominio.com/wp-admin/maint/repair.php - Verás una página con dos botones: "Reparar la base de datos" y "Reparar y optimizar la base de datos". Haz clic en el primero.
- Espera a que termine el proceso. Te mostrará un mensaje de éxito o error.
- IMPORTANTE: Una vez terminado, vuelve a tu archivo
wp-config.phpy ELIMINA la línea que añadiste. Dejar esta opción activa es un riesgo de seguridad.
Paso 5: Comprueba si el servidor de la base de datos está caído
Si has llegado hasta aquí, el problema no es de configuración. Es posible que el servidor MySQL (o MariaDB) que aloja tu base de datos se haya detenido.
¿Cómo comprobarlo?
Si tu hosting es de pago, lo más rápido es contactar con el soporte. Ellos pueden ver el estado del servidor al instante.
Si gestionas tu propio servidor (VPS) y usas Syspanel (puerto 2106), puedes hacerlo tú mismo:
- Inicia sesión en Syspanel.
- Busca la sección de "Servicios" o "Procesos".
- Localiza el servicio de base de datos (normalmente llamado
MySQLoMariaDB). - Si está detenido (color rojo o "Stopped"), intenta iniciarlo pulsando el botón de "Iniciar" o "Start".
[WARNING] Si el servicio no se inicia, puede haber un problema más profundo, como falta de espacio en disco o un error de corrupción en las tablas. En ese caso, necesitarás ayuda profesional o del soporte de tu hosting.
Paso 6: Problemas de permisos de usuario
En ocasiones, el usuario de la base de datos tiene permisos limitados. No basta con que el usuario exista; debe tener permisos para seleccionar, insertar, actualizar y borrar datos en la base de datos específica.
¿Cómo corregirlo?
- Accede a Syspanel (puerto 2106) o a tu panel de control (cPanel, Plesk).
- Ve a la sección de "Bases de datos MySQL".
- Busca la opción de "Gestionar permisos" o "Añadir usuario a la base de datos".
- Asegúrate de que tu usuario tiene marcados todos los privilegios (SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, etc.).
- Si no está marcado, selecciona "Todos los privilegios" y guarda los cambios.
Paso 7: Revisa si el problema es un plugin o tema
A veces, un plugin o tema mal codificado puede intentar hacer llamadas agresivas a la base de datos y saturarla, provocando que se bloquee. Para descartar esto:
- Renombra la carpeta de plugins: Con tu cliente FTP, ve a
wp-content/y renombra la carpetapluginsaplugins_inactivos. Esto desactiva todos los plugins a la vez. - Recarga tu sitio. Si funciona, el problema era un plugin.
- Para encontrar al culpable, renombra la carpeta de nuevo a
plugins, pero ahora ve moviendo cada plugin a una carpeta temporal uno por uno, recargando el sitio después de cada movimiento. - Si el problema persiste con los plugins desactivados, prueba a renombrar la carpeta del tema. Ve a
wp-content/themes/y renombra la carpeta de tu tema activo (por ejemplo,mi-temaami-tema_inactivo). WordPress usará un tema por defecto.
[INFO] Este método es de prueba y error, pero es muy efectivo para aislar el problema.
Paso 8: Aumentar el límite de memoria de PHP
En algunos casos, el error puede estar relacionado con la falta de memoria de PHP. Aunque no es la causa más común, vale la pena intentarlo.
- Abre tu archivo
wp-config.php. - Añade esta línea justo antes del final:
define('WP_MEMORY_LIMIT', '256M'); - Guarda y sube el archivo.
Preguntas Frecuentes (FAQ)
¿Por qué me sale "Error al establecer conexión con la base de datos" después de mudar mi web?
Porque en el nuevo hosting, los datos de acceso a la base de datos (nombre, usuario, contraseña y host) son casi con total seguridad diferentes. Debes actualizar el archivo wp-config.php con los nuevos datos.
¿El error puede deberse a un ataque de hackers?
Sí, es posible. Un ataque de fuerza bruta o una inyección SQL puede dañar la base de datos o dejarla inservible. Si sospechas de esto, además de reparar, deberías cambiar todas tus contraseñas (las de WordPress, la de la base de datos y la del hosting).
¿Qué hago si he probado todos los pasos y nada funciona?
Si has seguido todos los pasos anteriores y el error persiste, es hora de contactar con el soporte técnico de tu proveedor de hosting. Diles exactamente qué has hecho y qué errores has visto. Ellos tienen acceso directo a los servidores y podrán diagnosticar el problema a nivel de infraestructura, que es algo que tú no puedes ver. A veces, el problema es un disco duro fallando o un problema de red interno que solo ellos pueden solucionar.
¿Perderé mis datos si reparo la base de datos?
No, la reparación de WordPress no borra tus artículos o páginas. Solo intenta corregir las tablas dañadas. Sin embargo, es una práctica recomendada hacer una copia de seguridad antes de realizar cualquier operación de mantenimiento.
¿Es normal que este error aparezca de vez en cuando?
No, no es normal. Si aparece de forma intermitente, es señal de que tu servidor está inestable. Puede ser por falta de recursos (memoria o CPU) o por un problema de configuración del servidor. Deberías investigarlo o contactar con tu proveedor de hosting, ya que la fiabilidad de tu sitio está en juego.
Espero que esta guía te haya sido de gran ayuda. Recuerda: la clave está en la paciencia y en seguir los pasos de forma metódica. La mayoría de las veces, la solución es algo tan simple como corregir una contraseña en el archivo wp-config.php. ¡Mucho ánimo y buena suerte con tu WordPress!
