Cómo solucionar el "Error al establecer una conexión con la base de datos" en WordPress

portada error conexion base de datos wordpress

El fallo "Error al establecer una conexión con la base de datos" (o "Error establishing a database connection") es uno de los problemas más críticos y temidos en WordPress. Cuando ocurre, el sitio web deja de renderizarse por completo y muestra una pantalla en blanco con este aviso, impidiendo el acceso tanto a las visitas como al panel de administración /wp-admin/. En esta guía técnica paso a paso aprenderás las causas reales de este bloqueo, cómo verificar las credenciales en wp-config.php, cómo reiniciar el servicio MySQL y cómo reparar tablas corruptas.

🚨 ¿Qué significa técnicamente este fallo?

WordPress necesita comunicarse con su base de datos MySQL/MariaDB para cargar el contenido de las páginas, los usuarios, los plugins y las opciones de configuración.

El aviso se dispara únicamente cuando la petición PHP enviada por el servidor web no recibe respuesta o es rechazada por uno de estos tres motivos: credenciales incorrectas, servidor de base de datos caído por sobrecarga o tablas corruptas.

Pantalla de error al establecer una conexión con la base de datos en WordPress

Tabla de contenidos
  1. 🚨 ¿Qué significa técnicamente este fallo?
  • Tabla resumen: Causas habituales y solución directa
    1. 🚀 ¿Tu servidor sufre caídas constantes de MySQL por falta de memoria?
  • Paso 1: Comprobar las credenciales en el archivo wp-config.php
    1. Puntos críticos a revisar:
  • Paso 2: Comprobar si el servicio MySQL está activo
    1. Si estás trabajando en Localhost (XAMPP):
    2. Si estás en un Hosting Web en producción:
  • Paso 3: Reparar tablas de la base de datos corruptas
    1. Método automático mediante WordPress:
  • Paso 4: Probar la conexión con un script PHP aislado
  • Preguntas frecuentes
    1. ¿Puedo perder mis publicaciones o entradas al reparar la base de datos?
    2. ¿Por qué este error aparece y desaparece solo a lo largo del día?
  • Tabla resumen: Causas habituales y solución directa

    Causa del Fallo Síntoma Típico Solución Recomendada
    1. Datos de acceso erróneos Ocurre justo tras migrar de servidor o cambiar contraseñas. Revisar y corregir el archivo wp-config.php.
    2. Servicio MySQL caído XAMPP muestra MySQL detenido o el hosting saturado de RAM. Reiniciar servicio MySQL en el panel o aumentar recursos.
    3. Tablas de la base de datos corruptas La portada da error pero el panel admin pide reparar la base de datos. Activar la directiva WP_ALLOW_REPAIR en WordPress.
    4. Host de base de datos incorrecto El servidor rechaza localhost y exige una IP interna o socket. Ajustar la directiva DB_HOST según el proveedor.

    🚀 ¿Tu servidor sufre caídas constantes de MySQL por falta de memoria?

    En alojamientos compartidos de baja calidad o servidores locales mal configurados, los procesos de base de datos se bloquean periódicamente ante picos de visitas o ejecuciones pesadas de plugins.

    Para evitar caídas de servicio con servidores optimizados con memoria aislada, discos NVMe de alta velocidad, copias de seguridad automáticas y soporte técnico 24/7 en español, revisa los planes especializados:


    Ver Servidores WordPress con Protección y Descuento →

    Paso 1: Comprobar las credenciales en el archivo wp-config.php

    La causa más común tras clonar una web o completar una migración es un error tipográfico en el archivo central de configuración de WordPress. Accede a los archivos de tu web mediante tu cliente FTP o SFTP preferido (o a través del administrador de archivos de cPanel) y abre el archivo wp-config.php ubicado en la raíz del sitio.

    Constantes de conexión a la base de datos en el archivo wp-config.php

    Localiza el siguiente bloque de código y comprueba cada parámetro con los datos reales creados en tu panel de control:

    // ** Ajustes de la base de datos de WordPress ** //
    define( 'DB_NAME', 'nombre_de_tu_basededatos' );
    define( 'DB_USER', 'usuario_de_tu_basededatos' );
    define( 'DB_PASSWORD', 'tu_contraseña_segura' );
    define( 'DB_HOST', 'localhost' );

    Puntos críticos a revisar:

    • Prefijos de usuario y base de datos: En servidores reales con cPanel, los nombres suelen llevar un prefijo identificador (por ejemplo: usuario_wpdb en vez de wpdb a secas).
    • Espacios accidentales: Asegúrate de no haber copiado espacios invisibles al principio o al final de las comillas simples al pegar la contraseña.
    • DB_HOST en hostings específicos: Aunque el 90% de los servidores utiliza localhost, empresas como SiteGround, AWS o Google Cloud requieren una IP interna, un puerto específico o una URL de clúster (ejemplo: mysql.tudominio.com o 127.0.0.1:3306).

    Paso 2: Comprobar si el servicio MySQL está activo

    Si las credenciales son correctas pero el servidor de la base de datos no está respondiendo, la conexión fallará de inmediato.

    Si estás trabajando en Localhost (XAMPP):

    1. Abre el XAMPP Control Panel.
    2. Verifica si el módulo MySQL está coloreado en verde.
    3. Si está detenido en gris o rojo, pulsa en Start. Si se cierra por conflicto de puertos con otro servidor local, revisa cómo cambiar el puerto de Apache en XAMPP o comprueba si el puerto 3306 está ocupado.

    Si estás en un Hosting Web en producción:

    1. Accede al panel de control de tu alojamiento (cPanel o panel a medida).
    2. Entra en Bases de Datos MySQL y comprueba que el usuario asignado tenga todos los privilegios marcados (ALL PRIVILEGES).
    3. Intenta abrir la herramienta phpMyAdmin. Si phpMyAdmin tampoco carga y arroja error 500, el servicio MySQL de la máquina está caído y debes contactar al soporte técnico de tu proveedor para que reinicien el proceso.

    Paso 3: Reparar tablas de la base de datos corruptas

    Un síntoma muy claro de corrupción de tablas se produce cuando la página pública muestra "Error al establecer una conexión con la base de datos", pero al intentar acceder al panel de administración en /wp-admin/ aparece un aviso diferente que dice: "Una o más tablas de la base de datos no están disponibles. Es posible que sea necesario reparar la base de datos".

    Método automático mediante WordPress:

    1. Abre nuevamente el archivo wp-config.php con tu editor.
    2. Añade la siguiente línea justo encima del comentario que indica /* ¡Eso es todo, deja de editar! */:
      define( 'WP_ALLOW_REPAIR', true );
    3. Guarda el archivo y abre en tu navegador la siguiente dirección:
      https://tudominio.com/wp-admin/maint/repair.php
    4. Haz clic en el botón "Reparar la base de datos" (u Optimizar y reparar). WordPress ejecutará las sentencias SQL de comprobación de integridad.
    5. Paso de seguridad obligatorio: En cuanto termine el proceso, vuelve a abrir wp-config.php y elimina esa línea o cámbiala a false para evitar que cualquier usuario externo pueda reiniciar tus tablas.

    Revisión y reparación de tablas de WordPress en phpMyAdmin

    Paso 4: Probar la conexión con un script PHP aislado

    Para descartar si el problema reside en los archivos del núcleo de WordPress o directamente en la comunicación del servidor con MySQL, crea un archivo de prueba:

    1. Crea en tu ordenador un archivo de texto llamado testdb.php.
    2. Pega el siguiente código sustituyendo los datos por tus credenciales de wp-config.php:
      <?php
      $link = mysqli_connect('localhost', 'usuario_db', 'contraseña_db');
      if (!$link) {
          die('Fallo de conexión directo con MySQL: ' . mysqli_error($link));
      }
      echo '¡Conexión establecida con éxito a MySQL!';
      mysqli_close($link);
      ?>
    3. Sube el archivo a la carpeta raíz de tu web (public_html o htdocs).
    4. Ábrelo en tu navegador: https://tudominio.com/testdb.php.
    5. Diagnóstico:
      • Si muestra "¡Conexión establecida con éxito!", el servidor de base de datos funciona y el problema es interno de WordPress (un plugin que sobrecarga consultas o tablas corruptas).
      • Si muestra "Fallo de conexión directo", el usuario o la contraseña están mal escritos o el servicio MySQL rechaza el acceso.
    6. Borra siempre el archivo testdb.php una vez finalizada la prueba.

    📚 Artículos técnicos relacionados de nuestra serie de WordPress:

    Preguntas frecuentes

    ¿Puedo perder mis publicaciones o entradas al reparar la base de datos?

    La herramienta de reparación nativa de WordPress solo repara índices dañados y desfragmenta tablas que no pudieron cerrarse correctamente tras un reinicio brusco. No elimina registros de texto. No obstante, siempre es prudente descargar una copia exportada en formato .sql desde phpMyAdmin antes de manipular tablas.

    ¿Por qué este error aparece y desaparece solo a lo largo del día?

    Si el error es intermitente, la causa es una **sobrecarga de memoria en el servidor**. En horas de mayor tráfico, el límite de conexiones simultáneas a MySQL se satura, el proceso se congela unos minutos y vuelve a funcionar cuando baja la concurrencia. La solución definitiva en ese escenario consiste en optimizar la caché o migrar a un plan con mayor asignación de memoria RAM dedicada.

    Si quieres conocer otros artículos parecidos a Cómo solucionar el "Error al establecer una conexión con la base de datos" en WordPress puedes visitar la categoría Desarrollo y Programación.

    Go up