El mensaje "error al establecer una conexión a la base de datos" es un error de WordPress especialmente frustrante en el que todo el sitio es reemplazado por un aviso que tiene este aspecto:
Si estás leyendo esta entrada, hay una buena posibilidad de que estés experimentando este error ahora mismo.
Si no, estás de suerte.
E incluso, si no estás mirando este mensaje, aprender a corregir el error al establecer un problema de conexión en la base de datos es algo que todo usuario de WordPress debería saber.
En este post, aprenderás tres cosas:
Contenido del artículo
Si no estás familiarizado con el funcionamiento de WordPress, hay dos partes esenciales de un sitio web:
Cada vez que un visitante aterriza en tu sitio de WordPress, los archivos PHP llegan a tu base de datos para determinar exactamente qué información mostrar.
Sin una conexión funcional a la base de datos, la parte del archivo PHP de tu sitio WordPress no podrá obtener la información que necesita para renderizar una página de trabajo. Por eso muestra en su lugar el mensaje "error al establecer una conexión de base de datos".
Hay múltiples razones potenciales por las que estás viendo este mensaje.
La mayoría de las veces, estas causas se reducen a:
Debido a que no puedes estar seguro de qué es lo que está causando el mensaje para tu situación específica, la mejor manera de arreglar el problema es tomar un enfoque de diagnóstico.
Es decir, necesitas seguir sistemáticamente una serie de pruebas para aislar (y luego arreglar) el problema.
Esto es lo que hay que hacer:
Cuando veas este mensaje en el front-end de tu sitio, lo primero que debes hacer es comprobar si obtienes o no el mismo error cuando intentas acceder a tu panel de control de administrador en WordPress (WP-admin dashboard).
Si sigues viendo el mismo mensaje de error cuando intentas acceder a tu área wp-admin, salta al siguiente paso. Ya has eliminado este problema como una causa potencial.
Si ves un mensaje diferente mencionando algo como "La base de datos puede necesitar ser reparada", continúa con esta sección para aprender cómo reparar tu base de datos de WordPress.
Paso 1: Activar la utilidad de reparación en el archivo wp-config.php.
Para empezar, necesitas editar el archivo wp-config.php para tu sitio. Puedes hacer esto por cualquiera de los dos:
Tu archivo wp-config.php se encuentra en la carpeta raíz de tu sitio WordPress. Es la misma carpeta que contiene wp-admin y wp-content:
Una vez que puedas editar tu archivo wp-config.php, agrega este fragmento de código corto al final:
define( 'WP_ALLOW_REPAIR', true );
Asegúrate de guardar los cambios antes de continuar.
Una vez que hayas añadido el fragmento de código, puedes acceder a la herramienta de reparación de la base de datos de WordPress dirigiéndote a:
tudominio.com/wp-admin/maint/repair.php
En esa página, haga clic en Reparar base de datos para ejecutar la herramienta:
Una vez que la herramienta completa sus reparaciones, tu sitio debería funcionar de nuevo. Si lo hace, todo lo que necesitas hacer es volver a tu archivo wp-config.php y eliminar la misma línea de código que agregó para habilitar la utilidad de reparación.
Si tu sitio aún no funciona, continúa con el siguiente paso.
Si tu base de datos no está dañada, lo siguiente que debes comprobar es si tus credenciales de inicio de sesión de la base de datos están funcionando.
Tus credenciales de la base de datos se definen en el archivo wp-config.php:
Si esta información no coincide con las credenciales de la base de datos que creaste a través del panel de control del host, WordPress no podrá acceder a dicha base de datos.
Para probar si tus credenciales de base de datos están funcionando, puedes utilizar la función mysql_connect().
Utiliza un editor de texto como Bloc de notas para crear un archivo llamado databasecheck.php.
Luego, agregue este fragmento de código al archivo:
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>
Asegúrate de reemplazar "mysql_user" y "mysql_password" con el nombre de usuario actual y contraseña de tu archivo wp-config.php.
Luego, sube ese archivo a tu sitio web a través del cPanel o por FTP y accede a él yendo a:
tudominio.com/databasecheck.php.
Si aparece un mensaje que dice "Conectado correctamente", las credenciales de la base de datos funcionan y puedes pasar al siguiente paso.
Pero, si ves un mensaje como el de abajo, tienes un problema con tus credenciales de la base de datos:
La manera más fácil de solucionar el problema, es crear un nuevo conjunto de credenciales de base de datos para usar en tu sitio de WordPress.
Asumiendo que su host utiliza cPanel, puede crear un nuevo usuario de base de datos yendo a la opción Bases de datos MySQL en su panel de control de cPanel:
Desplázate hacia abajo hasta el área Usuarios de MySQL y busca la casilla Agregar un nuevo usuario.
Introduce un nuevo:
Asegúrate de recordar estos detalles ya que los necesitarás en un segundo.
Después de crear un nuevo usuario, ve a la opción Agregar un usuario a una base de datos y agrega el nuevo usuario a la base de datos de tu sitio WordPress:
En la siguiente pantalla, asegúrate de darle al usuario TODOS LOS PRIVILEGIOS:
Para terminar, debes volver al archivo wp-config.php de tu sitio y actualizar los campos DB_USER y DB_PASSWORD al nuevo usuario:
Una vez que guardes tus cambios, ¡tu sitio debería estar funcionando de nuevo!
Si ninguno de los métodos anteriores ha corregido el error, algunos de los archivos principales de WordPress pueden estar dañados.
Para asegurarte de que este no es el problema, puedes subir una nueva copia de WordPress a tu sitio. Si se hace bien, esto no afectará a ninguno de los contenidos, plugins o temas existentes.
Ve a WordPress.org y descarga su última versión:
Luego, extrae el archivo ZIP y elimina la carpeta wp-content y el archivo wp-config-sample.php:
Sube los archivos restantes a tu sitio WordPress a través de FTP. Cuando tu programa FTP te pregunte qué hacer con los archivos duplicados, asegúrate de elegir la opción Sobrescribir archivos duplicados.
Esto, asegurará que ninguno de tus archivos principales de WordPress esté dañado, y se espera que se arregle el problema.
Si ninguna de las soluciones anteriores ha funcionado, es posible que sólo se trate de un problema de hosting.
Hay un par de problemas potenciales:
Para solucionar estos problemas, deberás hablar con el equipo de apoyo de tu host.
En este punto, es de esperar que hayas podido corregir el error al establecer un mensaje de conexión a la base de datos y hayas conseguido que tu sitio funcione de nuevo.
Todavía, hay algunos problemas más pequeños, que también podrían causar este error. Estos problemas son, a menudo, únicos de su sitio y por lo tanto son difíciles de diagnosticar en un post como este.
Si sigues viendo el mensaje de error después de pasar por estas correcciones y hablar con tu host, es posible que quieras considerar contactar con un desarrollador de WordPress para investigar más a fondo el problema.
O, siempre puedes dejar un comentario y ¡esperamos que todos podamos arreglar el problema juntos!