“Error establishing a database connection”: qué significa el error de WordPress

El sistema de gestión de contenidos WordPress aventaja a otros CMS con una oferta de opciones muy sencillas para poner en marcha una página web moderna. Con pocos clics puedes crear un blog, una tienda online o una web corporativa. Normalmente todo funciona bien, pero cuando los usuarios se topan con un problema, se enfrentan al hecho de que no cuentan con ayuda para solucionarlo. En aquellos casos en lo que el sistema falla por completo, la falta de ayuda se vuelve especialmente molesta. Por eso, vamos a explicarte en este artículo lo que supone el error al establecer una conexión con la base de datos de WordPress (“Error establishing a database connection”), cuándo ocurre y cómo puedes solucionarlo.

Consejo

Para que puedas comprender esta complicada jerga, en nuestra guía te explicamos los 10 términos más importantes de WordPress de una manera sencilla.

¿Qué significa este mensaje de error?

Los sitios web de WordPress se basan, en gran medida, en bases de datos que, a su vez, utilizan el sistema de gestión de bases de datos MySQL. Cuando los usuarios navegan por una página de WordPress, son los comandos de PHP los que solicitan los registros necesarios de la base de datos. Sin embargo, si el usuario sólo puede ver el mensaje “Error establishing a database connection” esto significa que no fue posible consultar esta información. Desafortunadamente, el mensaje de error no nos dice por qué WordPress no pudo conectarse a la base de datos.

¿Cuándo aparece el error establishing a database connection en WordPress?

El mensaje de error no aparece necesariamente por una modificación que hayas llevado a cabo. De hecho, en la mayoría de los casos se produce porque la información de acceso a la base de datos ya no se almacena correctamente o porque la propia base de datos se ha dañado. Este error puede surgir, por ejemplo, porque un plugin ha hecho cambios sin tu consentimiento o puede venir dado por el propio servidor de la base de datos. El primer paso para corregirlo, por lo tanto, es localizar la fuente exacta del error.

Error establishing a database connection en WordPress: solución

Un buen punto de partida para la resolución de problemas es intentar iniciar sesión en el backend. Si tratar de acceder al wp-admin de Wordpress (área de administración) tampoco da resultado, puede que el navegador muestre otro mensaje: “One or more database tables are unavailable. The database may need to be repaired”. Si es este el mensaje de error que se muestra, la cuestión está clara: hay un error en la base de datos que paraliza todo el sistema. Afortunadamente, WordPress lleva incorporada una función de reparación que tienes que activar manualmente a través de wp-config.php, al no tener acceso al panel de control de tu backend en este momento.

Para llegar a wp-config.php, necesitas establecer una conexión FTP con tu servidor. La forma más fácil de hacerlo es con un software como FileZilla u otro programa FTP. Cuando hayas establecido una conexión con tu servidor (los datos de acceso suelen obtenerse a través de tu proveedor de alojamiento web), deberías encontrar el archivo necesario en el directorio de raíz de tu sitio web. Descárgalo y ábrelo con un editor de texto. En el archivo de configuración encontrarás los ajustes para la base de datos. Para activar la herramienta de reparación, inserta una línea de código en la configuración de MySQL:

define( 'WP_ALLOW_REPAIR', true );

Asegúrate de usar la sintaxis correcta. Es fundamental que coloques las comillas y los espacios correctos en el lugar que corresponde. Guarda el archivo y cárgalo de nuevo a tu servidor. Así se sobrescribe el fichero original.

Nota

Antes de realizar cualquier cambio en los archivos de WordPress, te recomendamos que crees una copia de seguridad. Las entradas incorrectas podrían causar nuevos problemas que se añadirían al error al establecer una conexión con la base de datos.

Cuando la carga haya finalizado, deberás ir a la siguiente página: "ejemplo.com/wp-admin/maint/repair.php" (en lugar de ejemplo.com, introduce tu dominio). En la herramienta, ahora activada, puedes reparar la base de datos o incluso realizar una optimización. Una vez que hayas realizado la reparación, debes desactivar la herramienta de nuevo para evitar que otros accedan a ella -ten en cuenta que cualquier persona puede tener acceso a la dirección URL de reparación. Por lo tanto, abre de nuevo wp-config.php y cambia el valor del comando de verdadero a falso o simplemente borra toda la línea de nuevo. No olvides guardar el archivo modificado y volver a cargarlo en tu servidor.

Pero ¿qué pasa si el backend también muestra el mensaje de “Error establishing a database connection”? Entonces suponemos que la información de acceso a la base de datos no es correcta. Puedes comprobar esto en el mismo archivo (wp-config.php). Al principio del código fuente encontrarás las líneas que contienen el nombre de la base de datos, el nombre de usuario, la contraseña y el nombre del host.

// ** MySQL settings ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'El nombre de tu base de datos);
/** MySQL database username */
define( 'DB_USER', 'Tu nombre de usuario' );
/** MySQL database password */
define( 'DB_PASSWORD', 'Tu contraseña' );
/** MySQL hostname */
define( 'DB_HOST', 'El nombre del servidor de tu base de datos' );

Comprueba que estos datos son correctos. Puedes obtener la información de acceso, por ejemplo, a través de tu proveedor de alojamiento web (normalmente puedes ver los datos de acceso online, en tu perfil de cliente). Asegúrate también de que la sintaxis sea correcta. El nombre de tu equipo dependerá de tu proveedor. WordPress ofrece una lista de valores DB_Host en su códice. Una vez que hayas encontrado el lugar donde se produjo el error, corrige los valores correspondientes y carga la versión correcta en tu servidor.

Por cierto, se puede utilizar la misma solución si el problema se produce inmediatamente después de una nueva instalación. En este caso, es probable que hayas introducido los datos de usuario erróneos en la máscara de instalación. En lugar de empezar todo de nuevo, puedes editar el archivo wp-config.php directamente.

Si esta solución no funciona, entonces puede ser que la base de datos y la información de acceso no sean el problema. En este caso, el problema podría provenir del servidor que suministra tu base de datos. Esto podría ocurrir por dos motivos: o bien ha caído el servidor en su totalidad o está sobrecargado temporalmente. Si se trata de esto último el problema podrá resolverse en pocos minutos. Si tal sobrecarga ocurre con frecuencia, deberías plantearte la opción de buscar una solución más adecuada para ti junto a tu proveedor de alojamiento web.

Hecho

Es bastante probable que los archivos de tu página web de WordPress (incluyendo PHP y CSS) y la base de datos no estén en el mismo servidor. Por consiguiente, tu página web podría visitarse a pesar del “Error establishing a database connection”, pero ya no tendría conexión con la base de datos y, por lo tanto, no podría mostrar nada.

También deberás ponerte en contacto con tu proveedor de alojamiento web si el servidor ha fallado completamente. Si no alojas la base de datos tú mismo, no podrás solucionar este problema sin ayuda; los expertos de TI de tu proveedor tendrán que resolverlo por ti. Antes de levantar el teléfono y llamar a tu proveedor, puedes comprobar si el servidor ya no está disponible. Para ello, intenta llamar a phpMyAdmin (una interfaz web para la administración de bases de datos) a través del área de usuario de tu proveedor de alojamiento web. Si la conexión tampoco se establece aquí, el error no es cosa tuya.

Consejo

Puedes encontrar aún más información sobre el práctico CMS de WordPress en nuestra Guía Digital.