Un error estableciendo conexión con la base de datos es muy común en WordPress y se produce cuando nuestros archivos no pueden conectar con la base de datos. No te asustes! Este error también suele ser muy fácil de solucionar siguiendo estos pasos.
¿Por qué se produce este error?
Ya sé que quieres ir al grano y solucionar tu error directamente y cuanto antes, pero primero tienes que entender por qué pasa para que puedas solucionarlo correctamente.
Cualquier instalación de WordPress está formada por un conjunto de archivos (divididos en distintas carpetas) y una base de datos con varias tablas. Todo ello se encuentra alojado en tu proveedor de hosting.
Para que WordPress funcione correctamente, tiene que estar todo conectado entre sí, y ello se consigue gracias al archivo wp-config.php
Este archivo se encuentra en el directorio raíz de tu cuenta de hosting y contiene los datos necesarios para que WordPress conecte con la base de datos, que estará creada dentro otra carpeta (eso no necesitas tocarlo a priori)
El error, por tanto, se produce cuando los datos de acceso que tienes en ese archivo no son los que se necesitan para acceder a la base de datos.
Por norma general, estos datos los has debido teclear tú al inicio del todo, cuando instalaste WordPress por primera vez. Sin embargo, es posible que, por algún motivo, se hayan desconfigurado, por lo que te va a tocar revisarlos manualmente para asegurarte de que son correctos.
El archivo wp-config.php
Este archivo posee distinta información sobre la configuración de WordPress, sin embargo, deberás irte hasta el apartado donde habla de «MySQL settings» ya que ahí es donde se encuentra el fallo.
Para acceder a este arhivo puedes hacerlo desde el Panel de Control de tu proveedor de hosting:
- Haz clic en el icono «Administrador de Archivos»,
- Ve a la carpeta raiz y localiza el archivo wp-config.php (paso 1)
- Haz clic sobre él (paso 2) y selecciona «Editar» (paso 3)
- Edítalo con el «Editor de código»
Ahi tienes que localizar 4 parámetros fundamentales, que son los que te explico a continuación (cuidado con no borrar las comillas ni ningún signo de puntuación a la hora de modificar datos!)
Nombre de la base de datos de MySQL
define(‘DB_NAME’, ‘xxxxxxxxxxxxx‘);
Nombre de usuario de la base de datos
define(‘DB_USER’, ‘xxxxxxxxxxxxx‘);
Contraseña de acceso a la base de datos
(No confundir con la contraseña de acceso a WordPress)
define(‘DB_PASSWORD’, ‘xxxxxxxxxxxx‘);
Dirección del servidor donde se encuentra la base de datos
define(‘DB_HOST’, ‘localhost‘);
En las cuatro opciones, tienes que comprobar que lo que te he escrito en letras rojas esté correcto. Es decir, se corresponda con la configuración de tu base de datos.
Lo normal es que ya no recuerdes los parámetros que pusiste… o que si elegiste una instalación automática de WordPress ni siquiera los teclearas tú, sino que fuera el propio CPanel.
No te preocupes, hay una forma de comprobarlo.
Comprobar datos de MySQL
Ahora debes volver a tu CPanel (o el panel de control que use tu proveedor de hosting) y buscar el icono que pone «Bases de Datos MySQL». Accede a ese icono.
Lo normal es que solo tengas una creada, por lo que debes seguir estos pasos:
- Baja hasta donde pone «Bases de Datos Actuales».
- Busca donde pone nombre de la base de datos
- Comprueba que este nombre es el mismo que tienes en el archivo wp-config.php en el apartado ‘DB_NAME’
- Guarda el archivo wp-config.php (sólo si el dato estaba erróneo y lo has modificado)
- Recarga tu página de WordPress
Si el error no se ha solucionado, tenemos que continuar adelante.
- Sigue bajando hasta donde pone usuarios actuales.
- Comprueba que los datos con los que hay en tu archivo config-php y asegurarte que es lo que aparece escrito junto a ‘DB_USER’
- Guarda el archivo wp-config.php (sólo si el dato estaba erróneo y lo has modificado)
- Recarga tu página de WordPress
Si tampoco el fallo estaba ahí, tenemos que continuar probando.
Vamos a por la contraseña.
El inconveniente en este caso es que no podemos averiguar la que tenías, pero sí es posible modificarla por una nueva.
- Pincha sobre «cambiar contraseña», junto a usuarios actuales,
- Elige una nueva contraseña
- Escribe esta misma en tu archivo wp-config, junto a ‘DB_PASSWORD’
- Guarda el archivo wp-config.php (sólo si el dato estaba erróneo y lo has modificado)
- Recarga tu página de WordPress
¿Se ha solucionado? Se nos van acabando las posibilidades… Nos falta por comprobar si el prefijo de las tablas que incluye la base de datos es correcto.
Comprobar datos en phpMy Admin
Esta comprobación es muy sencilla, únicamente vamos a comprobar un dato. Para ello necesitas:
- Vuelve a tu CPanel y elegir el icono «phpMy Admin»
- En la nueva pantalla, despliega tu base de datos en el listado de la izquierda
- Te aparecerán un montón de tablas, y todas ellas, verás que empiezan con xxxx_
- Ve a tu archivo wp-config y busca $table_prefix = ‘xxxx_‘; (Cámbialo si es diferente)
- Guarda el archivo wp-config.php (sólo si el dato estaba erróneo y lo has modificado)
- Recarga tu página de WordPress
Si aún después de realizar todas estas comprobaciones no se ha solucionado el error, únicamente cabe pensar que tu proveedor de hosting haya cambiado la ubicación del servidor donde está alojada tu base de datos (aunque no es lo habitual)
Comprobar la ubicación de la base de datos
En este caso tienes que contactar con tu proveedor de hosting, sí o sí, para preguntarle la dirección donde está alojada tu base de datos y poner la ip o dirección que te faciliten dentro de tu archivo wp-config.php
En concreto tienes que buscar define(‘DB_HOST’, ‘localhost‘); y escribir la dirección donde pone ‘localhost’ (esta palabra significa que tu base de datos está en la mismo servidor de tu WordPress).
wp-config-sample.php
Algunos me habéis comentado que en el Administrador de CPanel os aparece el archivo wp-config-sample.php en lugar del wp-config.php.
En realidad, este es un archivo de ejemplo que crea WordPress cuando realiza la instalación. Si no personalizas nada, el archivo se sigue llamando del mismo modo.
En este caso te recomiendo que generes un archivo wp-config.php del siguiente modo:
- Ve hasta este generador online de wp-config y cumplimenta los datos de los dos primeros apartados en el formulario. Aquí te explicamos como crear un wp-config básico.
- Pulsa el botón «Descargar wp-config.php»
- Sube el fichero descargado el Administrador de archivos de CPanel (fíjate que esté en el mismo directorio raiz que está el wp-config-sample.php)
- Guarda los cambios.
De esta forma ya tienes un archivo wp-config.php con los datos correctos que has ido introduciendo antes. Si haces la prueba y confirmas que todo funciona, puedes borrar el archivo wp-config-sample.php del Administrador.
¿Qué ta ha ido? Estoy seguro que al final ha sido más el susto que te has llevado que el tiempo que has tardado en solucionarlo. Si quieres aportar alguna idea para ayudar a otros usuarios, te animo a que dejes debajo tu comentario.
Hola Gracias por esas informaciones el problema es que lo q tengo es un localhost Xampp y me ha sido muy complicado. Llevo varios días en esto y estoy que desespero. Cualquier sugerencia de tu parte sera más que bienvenida. Saludos y gracias nuevamente.
Hola Claudio!
Lamentablemente yo no trabajo nunca en local, por lo que no puedo ayudarte en este caso.
Un saludo.
Yo estoy exactamente igual que Tamara, incluso he ejecutado pruebas con mysqli_select_db y falla.
Seguramente es una tontería que estoy dejando de hacer, pero es exasperante…
Ya lo resolví… el problema estaba en los puertos por defecto que quedaron isntalados en el WAMP. Cuando instalé el WAMP, sin querer también instalé MariaDB y éste quedó por defecto como DBMS principal del localhost. WP, intenta comunicarse con el DBMS y lo logra, pero no consigue las BD, porque realmente está entrando a MariaDB y no a MySQL.
Entré al WAMP y cambié el DBMS por defecto a MySQL, a quien se le asignaron los puertos respectivos y continué sin inconvenientes mi instalación de WP.
Buenas, el articulo está genial pero no encuentro solucion a mi problema. Yo estoy instalando directamente el WordPress desde el Wamp en el localhost, sin hosting de terceros. Pongo todos los datos y nada, sigue con el error. Me puede ayudar, por favor?
Yo estoy exactamente igual que Tamara, incluso he ejecutado pruebas con mysqli_select_db y falla.
Seguramente es una tontería que estoy dejando de hacer, pero es exasperante…
Tuve el mismo problema y logre solucionarlo.
Lo que hice fue agregar al ‘localhost’ el puerto que utilizaba en mi caso MAMP.
entonces el nombre del Hostname quedo asi: localhost:8889
y con ello ya me dejo instalar normal
Hola Redcaler!
Gracias por compartir tu solución. Seguro que es útil a otros usuarios.
Saludos!
EXCELENTE! Gracias por tu ayuda.
Hola Blanca!
Gracias a ti por pasarte por el blog y leer los artículos 😉
Saludos!
en $table_prefix = ‘wp_’; este es el prefijo que me sale sin embargo hay varias tablas con otros prefijos, necesito cambiarlos o que debo hacer?
Saludos y muchas gracias por el post
Tambien pudiera ser que el error sea por la cantidad de usuarios en línea? hoy he tenido más de 11 mil
Exelente explicacion me salvo con el tema de modificar la contraseña muchas gracias.
Saludos William H.
Hola William!
Me alegra mucho saber que te ha servido el tutorial para encontrar el error y solucionarlo 😉
Un saludo!
Hola Juanma,
A mí simplemente me manda a reinstalar el WP, es decir, no me da ningun error, está revisado todo y aparentemente, todo está ok, nombre, usuario, contraseña, localhost, ¿qué crees que sea? no he seguido todos los pasos todavía.
Excelente. Solucioné mi problema sin ningún drama con estas instrucciones. Muchas gracias por excelente artículo.
Saludos.
como lograste resolver el problema amigo ?
Hola a todos,
He realizado todos tus pasos. Utilizo phpadmin y FileZila y sin resultado.
Todos los datos los he copiado literalmente de mi Hosting OVH.:
(‘DB_NAME’, ‘xxxxx’);
(‘DB_USER’, ‘xxxxx’);
(‘DB_PASSWORD’, ‘xxxxx’);
(‘DB_HOST’, ‘xxxxx’);
Puedo entrar sin problema a phpadmin con mi contraseña y también en FileZila ¿puede ser que tarde horas en actualizarse?
Buenas tardes a todos, tengo el mismo error de accedo a la base de datos, tengo instalado wp en un servidor freebsd 11.2, con apache 2.4, mysql 8 y php 7.2, he revisado y corregido como lo ponen acá en el foro y sigue el mismo error, creé un nuevo usuario, le di todos los permisos y lo cambie en el wp_config.php, y sigue dando el mismo error, cuando reviso los log de error me muestran este error :
[Tue Nov 20 16:25:49.710522 2018] [core:error] [pid 2572] [client miip:60406] AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use ‘LimitInternalRecursion’ to increase the limit if necessary. Use ‘LogLevel debug’ to get a backtrace.
y en el log de aceso:
miip – – [20/Nov/2018:16:43:24 -0500] «GET / HTTP/1.1» 500 276
que puede ser eso. gracias anticipadas
Llegaste a solucionarlo? Me estoy volviendo loco
Genial, me ayudaron mucho. Seguí los pasos que indicaron y funcionó! Mil gracias
Gracias a ti por pasarte por el blog y dejar tu experiencia, Adriana.
Un saludo!
a otra cosa a mi también me sale solo el config-sample.php
en el sitio creado que es MiSitioGus
y un config.php en un apartado el cual no tiene los cuatro usuario bbdd contraseña prefijo..
este esta en:
C:\wamp64\www\MiSitioGus\wp-content\plugins\akismet\views
y no creo que sea…
por favor ayudame. Gracias…
Hola soy Gustavo Durand y a pesar de que realizo todo el proceso me sigue dando el mensaje que error en el acceso a?
pero si aparece el phpMyadmind y tambien entra a localhost con wamp server, y cuando le doy el click a mi base de datos llamada misitiogus también entra a la bienvenida de wordpress donde pide nombre base de datos, usuario, contraseña, prefijo y demás, pués, indica el error.
Por favor, me podrás ayudar. Gracias desde ya… un abrazo… Chao..
Muchas gracias. Al momento de crear el usuario user1 de la DB agregaba unas letras antes del usuario (xverw_user1), por lo que llevaba 2 horas dando con la solución. Si no es porque dices que revise el usuario en el cPanel sigo matándome la cabeza,
GRACIAS!!
Me alegro que el artículo te haya servidor de ayuda, Jorge.
Gracias por compartir tu experiencia. Sin duda eso va a ayudar a otros usuarios que les aparezca esto error estableciendo conexión con la base de datos en WordPress.
Un saludo!
GRACIAS, GRACIAS, GRACIAS
hola, buenas tardes.
Efectivamente me aparece ese error desde hace unos días al intentar acceder a mi web, ni como admin de wordpress ni como usuario normal.
He llegado hasta la parte de saber descargar y modificar el wp-config.php con filefilla.
Sin embargo, no encuentro manera de acceder al CPanel de mi hosting, (Digital Ocean) por mas que he leído….
No se si es que no tiene o no soy capaz de encontrarlo.
Hay que decir que el alta del hosting no lo hice yo, sino que nos pasó los datos FTP un tercero.
Sabrías iluminarnos?
Muchas gracias!
Hola Esteban!
Lamentablemente ese tema tienes que preguntar a tu hosting la forma de acceso a esos archivos. Seguro que están encantados de ayudarte.
Un saludo!
Hola, tengo una duda
Ni siquiera me aparece el archivo config.php, solo uno que dice config.sample.php
Que será?
Hola Yesenia!
He actualizado el artículo con información para crear el archivo wp-config.php de WordPress en el caso de que no lo tengas en tu hosting.
Saludos!
hola estuve trabajando con xampp localmente y ahora que utilizo mamp ya no pude utilizar algunos de esos siempre hacia los mismos pasos que sera ?