🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo solucionar el error de conexión a la base de datos en WordPress ('Error establishing a database connection')

Actualizado el 4 de enero de 2026

¡Vaya! Esa frase en inglés, “Error establishing a database connection”, es uno de los sustos más comunes (y más odiados) que te puedes llevar al administrar una web en WordPress. Verás, WordPress es como una tienda: la fachada (las páginas que ves) y el almacén (la base de datos donde se guardan tus artículos, usuarios y ajustes). Cuando el almacén no responde, la tienda tiene que cerrar.

Pero tranquilo, respira. Este error no significa que hayas perdido tus datos, ni mucho menos. En el 90% de los casos, es un problema de configuración o de recursos del servidor, y se puede arreglar en pocos minutos si sigues los pasos adecuados. En esta guía completa, te voy a explicar, como si estuviéramos tomando un café, cómo solucionar el error de conexión a la base de datos en WordPress, paso a paso y sin tecnicismos innecesarios.

Vamos a desglosar el problema en dos grandes grupos: primero lo más sencillo (revisar que todo esté en su sitio) y luego lo más complejo (reparar la base de datos caída o el servidor). No te saltes ningún paso, porque muchas veces la solución es más tonta de lo que parece.


¿Por qué aparece este error en tu WordPress?

Antes de lanzarnos a arreglar nada, es importante entender por qué pasa. El error establishing database connection ocurre cuando tu WordPress no puede comunicarse con el servidor de bases de datos (normalmente MySQL o MariaDB). Esto puede deberse a:

  • Datos de acceso incorrectos: El archivo wp-config.php contiene el nombre de la base de datos, el usuario y la contraseña. Si alguno de estos datos es erróneo (por ejemplo, tras una migración), WordPress no puede entrar al almacén.
  • Servidor de base de datos caído o sobrecargado: El "motor" de la base de datos se ha detenido o está saturado. Esto es muy común en hosting compartido cuando tu web recibe demasiado tráfico de golpe.
  • Corrupción de la base de datos: Las tablas internas de información se han dañado. A veces pasa por cortes de luz, errores al instalar plugins o ataques maliciosos.
  • Problemas con el servidor DNS o la IP: Si has cambiado de proveedor de hosting recientemente, tu dominio puede estar apuntando al servidor viejo que ya no existe.
  • Archivos corruptos del núcleo de WordPress: Un archivo clave de WordPress (como wp-settings.php) se ha dañado y no puede hacer la conexión de forma correcta.

Paso 1: La solución más rápida (y la que más funciona)

### 1.1. Reiniciar el servidor de base de datos (si tienes un panel de control)

Si tienes acceso a un panel de control como cPanel, Plesk, o incluso un VPS con Syspanel, el primer paso es tan simple como reiniciar el servicio de MySQL. Piensa en ello como apagar y encender tu router cuando el WiFi falla.

  1. Accede a tu panel de control de hosting. Si usas Syspanel (el antiguo HestiaCP), recuerda que el puerto de acceso es el 2106 (por ejemplo: https://tudominio.com:2106).
  2. Busca una sección que se llame "Servicios", "Servidores" o "Bases de Datos".
  3. Localiza el servicio de MySQL o MariaDB y haz clic en el botón de Reiniciar (o "Restart").

[INFO] Este truco funciona en el 70% de los casos si el error es temporal. Si el servidor de bases de datos se había bloqueado, reiniciarlo lo despierta al instante. No tengas miedo de hacerlo, no se pierde nada.

Si no encuentras el botón de reiniciar, pasa al siguiente paso.

### 1.2. Comprobar que el nombre del servidor de base de datos es correcto

A veces, tras una migración, el archivo wp-config.php apunta a localhost, pero tu nuevo hosting usa una dirección IP o un hostname específico (ej: mysql.tudominio.com).

  1. Ve a tu gestor de archivos en el hosting o usa FTP (FileZilla) para conectarte a tu sitio.
  2. Abre la carpeta raíz (normalmente public_html o htdocs).
  3. Busca el archivo llamado wp-config.php.
  4. Ábrelo con un editor de texto plano (nada de Word). Busca una línea que dice:
    define('DB_HOST', 'localhost');
    
  5. Normalmente localhost es lo correcto. Pero si tu hosting te ha dado un hostname específico (revísalo en la sección de "Bases de Datos" de tu panel), cámbialo por ese valor.

[WARNING] No modifiques el usuario ni la contraseña si no estás seguro. Solo toca la línea DB_HOST si tienes la certeza de que tu proveedor usa un servidor externo. Si lo cambias mal, empeorarás el error.


Paso 2: Solucionar el error de acceso a los datos (Credenciales)

Si el reinicio no ha funcionado, vamos a verificar que la llave maestra (el wp-config.php) tiene la cerradura correcta.

### 2.1. Verificar usuario y contraseña

  1. Vuelve a abrir el archivo wp-config.php.
  2. Busca las líneas DB_NAME, DB_USER y DB_PASSWORD.
  3. Ahora, ve a tu panel de control del hosting y entra en el apartado de Bases de Datos MySQL.
  4. Compara el nombre de la base de datos, el usuario y la contraseña que tienes en el archivo con los que te muestra el panel.
  • Si difieren: Copia y pega los valores exactos del panel en wp-config.php. Asegúrate de no dejar espacios extra.
  • Si son iguales: Prueba a cambiar la contraseña desde el panel y actualízala también en el archivo wp-config.php. A veces, los caracteres especiales se guardan mal en la migración.

### 2.2. Probar la conexión directamente con PHP

Si sigues dudando, puedes crear un archivo de prueba para ver si el servidor de tu web puede hablar con la base de datos.

  1. Crea un archivo en tu ordenador llamado testdb.php.

  2. Pégalo dentro de la carpeta raíz de tu WordPress (junto a wp-config.php).

  3. Escribe dentro este código (cambiando los valores por los tuyos):

    <?php
    $conexion = mysqli_connect('localhost', 'TU_USUARIO', 'TU_CONTRASEÑA', 'TU_BASEDEDATOS');
    if (!$conexion) {
        die('Error de conexión: ' . mysqli_connect_error());
    }
    echo '¡Conexión exitosa!';
    ?>
    
  4. Guarda el archivo y accede en tu navegador a tudominio.com/testdb.php.

  • Si dice "¡Conexión exitosa!", el problema es de WordPress, no de la base de datos. Borra ese archivo y pasa al Paso 3.
  • Si muestra "Error de conexión: Access denied for user...", significa que el usuario o contraseña son incorrectos. Revisa el Paso 2.1 de nuevo.
  • Si muestra "Unknown database", el nombre de la base de datos está mal.

[TIP] ¡IMPORTANTE! Borra el archivo testdb.php inmediatamente después de usarlo. Dejarlo en el servidor es un agujero de seguridad enorme.


Paso 3: Reparar una base de datos dañada o caída

Si la conexión es posible pero WordPress sigue fallando, es probable que la base de datos caída esté corrupta o que algunas tablas estén rotas.

### 3.1. Usar la herramienta de reparación integrada de WordPress

WordPress tiene un modo de reparación oculto que es muy útil.

  1. Accede de nuevo a tu wp-config.php.

  2. Busca la línea que dice define('WP_DEBUG', false); y justo antes de esa línea (o al final del archivo), añade esta línea:

    define('WP_ALLOW_REPAIR', true);
    
  3. Guarda el archivo.

  4. Ahora ve a tu navegador y escribe esta URL: tudominio.com/wp-admin/maint/repair.php.

  5. Verás una página con dos botones. Haz clic en "Reparar base de datos" (o "Repair Database"). Espera a que termine. Luego prueba a cargar tu web.

[WARNING] Es esencial que borres la línea define('WP_ALLOW_REPAIR', true); del archivo wp-config.php cuando termines. Si la dejas activa, cualquiera podría acceder a esa página de reparación y dañar tu sitio. Es una puerta trasera peligrosa.

### 3.2. Reparar desde phpMyAdmin

Si el método anterior no funciona, vamos a usar la herramienta que trae tu hosting para gestionar bases de datos.

  1. Ve a tu panel de control y busca phpMyAdmin (normalmente está dentro de la sección de Bases de Datos).
  2. Haz clic en tu base de datos (la que aparece en DB_NAME).
  3. Verás una lista de tablas (todas empiezan con wp_). Marca la casilla de arriba del todo para seleccionarlas todas.
  4. En el desplegable que dice "Con seleccionadas", elige "Reparar tabla".
  5. Espera a que termine el proceso. Te dirá si alguna tabla ha dado error.

Paso 4: Comprobar el servidor y los recursos

A veces, el problema no es tu WordPress, sino que el servidor está saturado.

### 4.1. Revisar el espacio en disco

Si tu disco duro está lleno, la base de datos no puede escribir y se cae.

  1. En tu panel de control (cPanel o Syspanel), busca "Uso de disco" o "Estadísticas".
  2. Si está al 99% o 100%, tienes que liberar espacio. Borra copias de seguridad antiguas del servidor, archivos temporales o logs.

### 4.2. Límite de memoria de PHP

A veces, el error aparece al intentar cargar una página muy pesada. Aumentar la memoria puede ayudar.

  1. Edita el archivo wp-config.php de nuevo.

  2. Añade esta línea justo después de la configuración de la base de datos:

    define('WP_MEMORY_LIMIT', '256M');
    
  3. Guarda y prueba.

[INFO] Si el error ocurre justo después de instalar un plugin, desactiva todos los plugins. Para ello, renombra la carpeta wp-content/plugins a wp-content/plugins_fuera. Si la web vuelve a funcionar, el problema es un plugin conflictivo. Luego ve activándolos uno a uno.

### 4.3. Contactar con tu proveedor de hosting

Si ya has hecho todo esto y sigues viendo el error establishing database connection, el problema es casi seguro del servidor. Antes de tirar la toalla, contacta con tu soporte técnico y diles:

  • "He verificado mis credenciales en wp-config.php".
  • "He reiniciado MySQL y he reparado las tablas".
  • "Sigue apareciendo el error. ¿Podéis comprobar si el servidor de bases de datos está caído o si hay un bloqueo de IP?"

Muchas veces, el soporte puede ver algo que tú no ves (como un firewall bloqueando la conexión interna).


Solución avanzada para usuarios con VPS (Syspanel)

Si tienes tu propio servidor VPS y usas Syspanel (puerto 2106), el problema puede ser que el servicio MySQL no arrancó bien tras un reinicio del sistema.

  1. Accede por SSH a tu servidor.

  2. Ejecuta este comando para ver el estado:

    systemctl status mysql
    
  3. Si está inactivo, arráncalo:

    systemctl start mysql
    
  4. Si quieres que se inicie siempre con el sistema:

    systemctl enable mysql
    

[WARNING] Si el comando te da un error de "socket" o "permiso denegado", puede que el disco esté lleno. Ejecuta df -h para ver el espacio. Si está al 100%, tendrás que limpiar archivos antes de que MySQL pueda arrancar.


Preguntas Frecuentes (FAQ) sobre este error

### ¿He perdido mis artículos si veo este error?

No. El error de conexión no borra datos. Tu contenido sigue en la base de datos, solo que WordPress no puede leerlo. Una vez solucionado el problema, todo volverá a estar como antes.

### ¿Cuánto tiempo tarda en arreglarse? ¿Mi web estará caída mucho tiempo?

Depende de la causa. Si es un reinicio del servidor, son 2 minutos. Si es un problema de credenciales, 10 minutos. Si es corrupción de tablas, puede llevar una hora si la base de datos es grande. Pero el 90% de los casos se resuelven en menos de 30 minutos siguiendo estos pasos.

### ¿Puedo evitar que esto pase en el futuro?

Sí. Haz copias de seguridad automáticas (tanto de archivos como de la base de datos). Usa un plugin de caché para aliviar la carga del servidor. Y no instales plugins de fuentes dudosas.

### ¿Por qué me pasa solo en el móvil o en ciertos horarios?

Eso suele indicar que tu servidor no tiene recursos suficientes (memoria RAM o CPU). Cuando hay picos de tráfico, la base de datos se satura y tira la toalla. Considera mejorar tu plan de hosting o activar una caché de página más agresiva.


Resumen final de la solución

Para que no te pierdas, aquí tienes la checklist definitiva para solucionar WordPress ante este error:

  1. Reinicia el servicio de MySQL desde tu panel de control.
  2. Verifica que el wp-config.php tiene los datos correctos (host, usuario y contraseña).
  3. Prueba la conexión con un archivo testdb.php temporal.
  4. Repara las tablas desde phpMyAdmin o usando el modo de reparación de WordPress.
  5. Aumenta la memoria PHP si sospechas de un plugin pesado.
  6. Contacta con tu proveedor si nada funciona.

El error conexión base de datos wordpress es frustrante, pero casi siempre es un simple "resfriado" que se cura con estas recetas. No te agobies, ve paso a paso. Y recuerda: si tienes un plan de hosting gestionado, el soporte técnico está para ayudarte; no dudes en abrir un ticket si te atascas.

Espero que este artículo te haya salvado el día. ¡Nos vemos en la próxima guía!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel