Cómo solucionar “Error estableciendo una conexión con la base de datos”

Publicado el · ·

Si has llegado hasta aquí es porque tu página web ha dejado de funcionar. Ante ti tienes una pantalla complemente en blanco y una simple frase en negro. En ella pone “Error estableciendo una conexión con la base de datos”. O quizás lo tienes en inglés y se puede leer “Error establishing a database connection”.

En cualquier caso, la cuestión es que estás algo asustad@. ¡No puedes hacer nada en tu web! Te has quedado sin acceso al panel de control y sin poder añadir nuevo contenido. Sin embargo, lo peor de todo es que tus visitas observan el mismo problema que tú 😱.

Pero no te preocupes: tiene fácil arreglo.

En esta entrada de blog te explico para empezar porqué se produce este error. Así entenderás la situación en la que te encuentras, lo cual te ayudará a prevenir el error en el futuro. Y por supuesto te muestro paso a paso cómo solventar el problema. Así que sigue leyendo que en cuestión de pocos minutos ya tendrás tu web en marcha otra vez 😉.

Más información sobre este error

Aún recuerdo la primera vez que vi en pantalla “Error estableciendo una conexión con la base de datos”. Me quedé con la cara a cuadros pensando: ¡Pero si hace 3 segundos aquí tenía mi página web! Me acojoné y es posible que llorase un poco (no lo tengo claro).

En cualquier caso, lo cierto es que hasta que lo solucionas pasas un mal rato. Sobretodo si la web es ya visible para cualquiera. Es entonces cuando piensas: seguro que justamente ahora tengo un cliente potencial viéndola. Si es el caso, sin duda la impresión que se estará llevando es malísima.

Pero bueno, como he comentado, este error tiene fácil arreglo. Así que don’t worry, que para eso estamos 😎.

Seguramente tengas ante ti algo parecido a esto:

Mensaje en pantalla "Error estableciendo una conexión con la base de datos".
Mensaje en pantalla “Error estableciendo una conexión con la base de datos”.

Además, si intentas acceder a tu panel de control (www.tudominio.com/wp-admin), te sale lo siguiente:

La versión de "Error establishing a database connection" desde el panel de control.
La versión de “Error establishing a database connection” desde el panel de control,

Esta última imagen, por cierto, ya te da algún indicio de lo que debes hacer para solucionar el error. Pero yo voy a ir más allá, explicándote paso a paso lo que debes hacer.

¿Qué significa este error?

Si ya sabes un poco qué es WordPress, sabrás que para funcionar utiliza lo siguiente:

  • Archivos PHP: en ellos figuran las directrices. Básicamente determinan qué debe hacer cada elemento de tu web.
  • Una base de datos MySQL: aquí se almacena toda la información generada por tu web. Por ejemplo, usuarios, páginas o entradas de blog.

Como su nombre indica, este error te está diciendo que ambos elementos no pueden comunicarse. Te recuerdo lo que ves: “Error estableciendo una conexión con la base de datos”. Es decir, tienes al menos un archivo PHP de tu web que no consigue localizar la información que necesita.

¿La causa? No puede conectar con la base de datos. ¿La consecuencia? No tiene ninguna información que mostrar y la página te sale en blanco con el mensaje de error.

Posibles causas

Existen diferentes motivos que explican el porqué ocurre este error. La causa más habitual es que hayas olvidado decirle a WordPress que has cambiado algún parámetro de la base de datos. Esta situación puede producirse porque:

  • Acabas de migrar tu web a otro hosting o dominio.
  • Has cambiado la contraseña de tu base de datos. O mejor dicho, del usuario que controla tu base de datos.
  • No has sabido cómo instalar WordPress correctamente.

Es posible que leyendo estas posibles causas hayas visto la tuya. A mi me ha pasado a menudo. Como ya me sé la lección, cuando en ocasiones veo la pantalla en blanco, me digo a mi mismo: “Mierda Pablo, ¡te has olvidado X!”.

Bueno, pues ahora que ya entiendes mejor qué sucede, voy a explicarte cómo solucionar el error. Estupendo, ¿verdad? 🙃

El archivo wp-config

Lo verás más adelante pero te lo avanzo ya.

La solución a “Error estableciendo una conexión con la base de datos” pasa sí o sí por wp-config.php. Por eso creo que puede interesarte conocerlo mejor antes de “jugar” con él.

Qué información contiene

La información más importante dentro de tu wp-config.php es la relativa a tu base de datos. Concretamente, tienes lo siguiente:

  • Nombre de la base de datos.
  • Nombre del usuario MySQL que accede a la base de datos.
  • Contraseña del usuario MySQL.
  • Localización de la base de datos.
En wp-config.php tienes la información acerca de la base de datos.
En wp-config.php tienes la información acerca de la base de datos.

Pero esto no es todo lo que nos interesa de wp-config.php.

Este archivo contiene otro dato que es interesante para resolver el error de conexión a la base de datos que tienes. Se trata del prefijo de las tablas MySQL de WordPress.

En wp-config.php también se especifica el prefijo de las tablas MySQL.
En wp-config.php también se especifica el prefijo de las tablas MySQL.

¿De qué estoy hablando?

El prefijo es lo que sale en el nombre de toda tabla de la base de datos de un mismo WordPress. Fíjate en la imagen anterior. Como prefijo tenemos “wp_” y es el que viene por defecto cuando instalas WordPress.

Sin embargo, y como medida de seguridad, en la instalación de WordPress yo siempre recomiendo que cambies el prefijo por otro. Uno con letras y números que no signifiquen nada. Por ejemplo, “lkgf491_” sería un prefijo único y por lo tanto más seguro.

Si aún no te queda claro esto del prefijo, a continuación tienes una imagen de la base de datos de un WordPress que no tiene el prefijo por defecto. Verás como todas las tablas empiezan por el mismo prefijo.

Ejemplo de base de datos de un WordPress con todas las tablas empezando con el mismo prefijo.
Ejemplo de base de datos de un WordPress con todas las tablas empezando con el mismo prefijo.

Dónde encontrarlo

wp-config.php es un archivo PHP que puedes localizar en el directorio en el que tienes instalado tu WordPress. Concretamente, en la carpeta raíz o base.

El archivo wp-config.php se encuentra en el directorio raíz de tu WordPress.
El archivo wp-config.php se encuentra en el directorio raíz de tu WordPress.

Tienes dos formas de llegar hasta este archivo: por FTP o por WebFTP. Si desconoces cómo hacerlo, en esta entrada de blog te explico cómo acceder a WordPress vía FTP. Es rápido de aprender y necesario. El motivo es sencillo: debes poder hacerlo para solucionar el error que te ha traído hasta aquí.

Solucionando “Error estableciendo una conexión con la base de datos”

Para solucionar lo que te está pasando, básicamente debes comprobar que la información que figura en wp-config.php es correcta. A continuación te muestro cómo comprobar cada dato.

Pero antes déjame decirte que yo voy a utilizar mi panel de control y éste puede ser diferente al tuyo. El mío se llama cPanel y es seguramente el más utilizado. Si tu proveedor de hosting lo utiliza, perfecto, pues podrás seguir al milímetro las explicaciones. En cambio, si el tuyo es diferente, lo que viene a continuación te guiará para que encuentres las opciones concretas en tu caso.

El nombre de la base de datos

#1: Dirígete a la opción “MySQL Bases de datos”.

Encontrarás esta opción dentro del apartado “Bases de datos”.

Ves al apartado de bases de datos de tu cPanel.
Ves al apartado de bases de datos de tu cPanel.

#2: Anota el nombre de tu base de datos

Busca la sección en la que se listan tus bases de datos y fíjate en la columna con sus respectivos nombres.

Lo normal es que tú tengas tan sólo una base de datos creada. Así que la búsqueda es fácil pues en la columna “Base de datos” tan sólo tendrás una fila. En cambio, si tienes diferentes bases de datos (y por lo tanto diferentes webs), busca la que se corresponda a la web en la que te aparece el error de conexión.

Apúntate el nombre de la base de datos de la web en la que aparece el error.
Apúntate el nombre de la base de datos de la web en la que aparece el error.

#3: Comprueba el nombre de la base de datos que figura en wp-config.php.

Abre el archivo PHP en cuestión y fíjate en el campo relativo al nombre de base de datos.

Verifica el nombre de la base de datos.
Verifica el nombre de la base de datos.

¿Coincide con el nombre real?

  • Si sí, el error recae en algún otro campo que vamos a ver a continuación.
  • Si no, pues corrígelo de inmediato y guarda el archivo. Con esto habrás solucionado (en parte) el error. Yo igualmente comprobaría el resto de datos pues puede que haya otro erróneo.

El usuario MySQL

El usuario MySQL es el que accede a tu base de datos para realizar cambios en ella. Para ello necesita un nombre de usuario, una contraseña y tener los permisos suficientes para actuar. Así que si tu web tiene un error estableciendo una conexión con la base de datos, puede que tenga relación con éstos.

Su nombre

#1: Dirígete de nuevo a la opción “MySQL Bases de datos” de tu cPanel.

#2: Localiza el nombre de tu usuario MySQL

Para ello debes mirar el apartado relativo a usuarios MySQL y sus nombres. En cPanel lo encontrarás en la parte inferior de la pantalla.

Anota el nombre del usuario MySQL de la web en la que aparece el error.
Anota el nombre del usuario MySQL de la web en la que aparece el error.

Si es tu primera web, tendrás un sólo usuario MySQL. En cualquier caso, anota el nombre del usuario MySQL de la web que tienes afectada por el error.

#3: Comprueba el nombre del usuario MySQL que figura en wp-config.php.

Accede al archivo por FTP o WebFTP y verifica que el nombre del usuario MySQL que aparece en él coincide con el que has anotado.

Verifica en wp-config.php el nombre del usuario MySQL
Verifica en wp-config.php el nombre del usuario MySQL

¿Es el mismo nombre?

  • Si el usuario MySQL es el mismo, entonces el error está en otro campo.
  • Si no lo es, corrígelo y guarda el archivo. Puedes intentar ver si con esto tu web ya no muestra “Error estableciendo una conexión con la base de datos”. ¿El error persiste? Sigue con este blogpost para comprobar el resto de campos de wp-config.php.

Su contraseña

#1: Vuelve al apartado de usuarios MySQL.

#2: Establece una nueva contraseña para el usuario MySQL.

Desde aquí puedes establecer la contraseña del usuario MySQL.
Desde aquí puedes establecer la contraseña del usuario MySQL.

Debes hacer clic en la opción “Establecer contraseña” del usuario MySQL que te interesa. La razón tras ello es que no puedes consultar la contraseña actual. Sólo cambiarla por una nueva.

¿Te da palo? Bueno, a mi me parece una buena medida de seguridad. Además, el único lugar en el que debes poner la contraseña del usuario MySQL es en el archivo wp-config.php. Es decir, que tampoco hablamos de mucho trabajo, ¿eh? 😒

Cuando hagas clic en “Establecer contraseña” verás lo siguiente:

Establece una nueva contraseña segura para el usuario MySQL.
Establece una nueva contraseña segura para el usuario MySQL.

Desde aquí puedes escribir el nuevo password que quieres asignarle al usuario MySQL. Siempre aconsejo que la contraseña sea lo más complicada posible. Por eso yo de ti utilizaría la que me diera el “Generador de contraseñas”.

En cualquier caso, anota la nueva contraseña y dale a “Cambiar contraseña”.

#3: Comprueba la contraseña del usuario MySQL que figura en wp-config.php.

Pon la nueva contraseña del usuario MySQL en wp-config.php.
Pon la nueva contraseña del usuario MySQL en wp-config.php.

Asegúrate de que pones la misma contraseña que has anotado previamente. Al completo. Dale a guardar el archivo PHP y verifica si ha desaparecido el mensaje “Error estableciendo una conexión con la base de datos”.

¿Sí? ¡Estupendo!

¿Aún no? Tranquil@, sigue leyendo que ya queda poco 👍🏻

Sus permisos

Imagina que tú eres un usuario MySQL. La situación es como cuando entras en un piso de alquiler. Seguramente quieras saber qué puedes hacer y que no. ¿Puedes pintar paredes? ¿Hacer agujeros en la pared? ¿Tener una mascota?

Pues un usuario MySQL necesita que le des permisos para poder operar en la base de datos. Es decir, que tú puedes tener wp-config.php bien rellenado que tu web no funcionará (aún). Y seguramente sea por una cuestión de permisos.

A continuación te muestro cómo asignar de nuevo el usuario MySQL a la base de datos para asegurarnos que tiene todos los privilegios. Si no utilizas cPanel, es posible que no veas ninguna opción parecida. En este caso, contacta con tu proveedor y pregúntaselo.

Añade de nuevo el usuario MySQL a la database.
Añade de nuevo el usuario MySQL a la database.

Selecciona el usuario MySQL y la base de datos que te interesan, y dale a “Añadir”.

Asegúrate que el usuario MySQL tiene todos los privilegios.
Asegúrate que el usuario MySQL tiene todos los privilegios.

En este paso, tan sólo debes hacer clic en “Todos los privilegios” y luego en el botón “Hacer cambios”.

Si con esto el mensaje “Error estableciendo una conexión con la base de datos” no desaparece, ya sabes. Toca seguir leyendo 😜

El hostname MySQL

El hostname es el lugar en el que se encuentra la base de datos. Por defecto se trata de “localhost”. Es el lugar más comúnmente utilizado por los diferentes proveedores de hosting.

De todas formas, mira si por algún lado del panel de control del hosting tienes indicaciones al respecto. Si no las hay, algo habitual, consúltalo con tu proveedor.

Asegúrate que el hostname indicado en wp-config.php es el correcto.
Asegúrate que el hostname indicado en wp-config.php es el correcto.

El prefijo de las tablas

Si has verificado todo lo anteriormente comentado, y aún te marca error estableciendo una conexión con la base de datos, sólo queda verificar un campo más. Ánimos, ¡que te queda nada! ✊🏻

¿Recuerdas lo que comentaba del prefijo de las tablas? ¿No? Pues sube al punto en el que te explico qué es el archivo wp-config.php y vuelve a leerlo.

Comprueba que el prefijo en wp-config.pho es el correcto.
Comprueba que el prefijo en wp-config.pho es el correcto.

No importa si tu prefijo es el que hay por defecto “wp_” o uno personalizado para mayor seguridad. Verifica en wp-config que el prefijo que aparece se corresponde.

¿Conseguiste solucionar “Error establishing a database connection”?

Bueno, pues hasta aquí este artículo de blog ☺

Si has seguido los pasos mostrados, seguro que has podido solucionar el error y ya no verás el puñetero mensaje “Error estableciendo una conexión con la base de datos. ¡Felicidades!

Si quieres puedes celebrar haberlo solucionado con el siguiente tweet:

Estoy con una sonrisa en la cara. He podido solucionar un error de conexión con la base de datos de mi WordPress. ¡Vamos!Haz click para twittear

Tu turno: ¿dónde estaba el problema en tu caso? ¿Te ha sido útil este blogpost? 

➡ ¡Déjame un comentario debajo!

¿Te ha gustado esta entrada de blog? Dale 5 estrellas. ¡Gracias!

Cómo solucionar “Error estableciendo una conexión con la base de datos”
Votar es valorar :-)

¡Hola! Soy quien ha escrito este post con cariño

Pablo Querol

Pablo Querol

Me dedico al marketing digital. Para ello trazo estrategias para captar visitas y convertirlas en clientes. El copywriting es indispensable, al igual que el SEO. Siempre me ha gustado contribuir a la comunidad. Considero que SrMomo es mi forma de seguir haciéndolo.

Déjame un comentario si te apetece y lo responderé personalmente :)

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Información básica sobre protección de datos:
Responsable: Estudio Momo Comunicación, S.L. (SrMomo).
Finalidad: Moderar y responder comentarios de usuarios.
Legitimación: Consentimiento del interesado.
Destinatarios: No se cederán a terceros salvo obligación legal.
Derechos: Puedes ejercitar en cualquier momento tus derechos de acceso, rectificación, supresión, oposición y demás derechos legalmente establecidos a través del siguiente e-mail: info@srmomo.com.
Información adicional: Puedes consultar la información adicional y detallada sobre protección de datos aquí.

El curso "Los 6 primeros pasos para que triunfes con tu web" consta de:

  • 6 super lecciones enviadas directamente a tu bandeja de entrada.
  • 4 ebooks descargables con los aspectos esenciales de todo proyecto de éxito en Internet.
  • 1 hoja de trabajo que te ayudará a organizarte y a plantearte todos los aspectos clave para tu éxito.

Información básica sobre protección de datos:
Responsable: Estudio Momo Comunicación, S.L. (SrMomo).
Finalidad: Gestionar y enviar información de boletines y promociones a través de correo electrónico.
Legitimación: Consentimiento del interesado.
Destinatarios: No se cederán a terceros salvo obligación legal.
Derechos: Puedes ejercitar en cualquier momento tus derechos de acceso, rectificación, supresión, oposición y demás derechos legalmente establecidos a través del siguiente e-mail: info@srmomo.com.
Información adicional: Puedes consultar la información adicional y detallada sobre protección de datos aquí.

No enviamos spam y puedes darte de baja cuando quieras.

Únete a la comunidad de SrMomo

Y recibirás nuestro curso gratuito de WordPress

Compartir1
Twittear
Compartir