Cómo arreglar el error 'Error al conectar con la base de datos' en WordPress (cPanel)
¡Hola! Si estás leyendo esto, es muy probable que hayas visto el temido mensaje "Error al conectar con la base de datos" en tu sitio WordPress. No te preocupes, es uno de los errores más comunes y, en la gran mayoría de los casos, tiene una solución sencilla que no requiere ser un experto en programación.
En esta guía completa, paso a paso y en un lenguaje muy claro, vamos a desglosar todas las causas posibles y las soluciones para que tu web vuelva a funcionar en cuestión de minutos. Vamos a ello.
¿Por qué ocurre este error en WordPress?
Antes de ponernos manos a la obra, es importante entender qué significa este mensaje. WordPress guarda todo su contenido (artículos, páginas, comentarios, usuarios y configuraciones) en una base de datos, normalmente MySQL o MariaDB. Para conectarse a ella, utiliza un archivo de configuración llamado wp-config.php.
Cuando ves el error conexión base datos WordPress, significa que WordPress no puede comunicarse con esa base de datos. Las causas más frecuentes suelen ser:
- Datos de acceso incorrectos en el archivo
wp-config.php(nombre de usuario, contraseña, nombre de la base de datos o servidor). - Problemas con el servidor de base de datos (caído, sobrecargado o en mantenimiento).
- Archivos corruptos o modificados del núcleo de WordPress.
- Problemas de permisos de archivos o de la propia base de datos.
- Configuración de servidor incorrecta (por ejemplo, el puerto de conexión).
Vamos a solucionarlo de lo más simple a lo más complejo.
Solución 1: La Reina de las Soluciones - Revisar el archivo wp-config.php
Este es el primer lugar donde debes mirar. El archivo wp-config.php contiene las credenciales que WordPress usa para conectarse a la base de datos. Un simple error tipográfico o un cambio accidental puede provocar este fallo.
¿Cómo acceder al archivo wp-config.php?
Tienes dos formas principales de hacerlo:
-
Desde cPanel (el método más común):
- Inicia sesión en tu panel de control de cPanel (normalmente en
tudominio.com/cPanel). - Busca la sección "Archivos" y haz clic en "Administrador de archivos".
- Navega hasta la carpeta
public_html(o la carpeta donde esté instalado tu WordPress, comopublic_html/miweb). - Busca el archivo llamado
wp-config.php. Haz clic derecho sobre él y selecciona "Editar" o "Code Editor".
- Inicia sesión en tu panel de control de cPanel (normalmente en
-
Desde un Cliente FTP (como FileZilla):
- Conéctate a tu servidor usando tus credenciales FTP.
- Navega a la raíz de tu instalación de WordPress.
- Descarga el archivo
wp-config.phpa tu computadora. - Ábrelo con un editor de texto plano como el Bloc de notas o Sublime Text.
¿Qué debo buscar dentro del archivo?
Una vez que tengas el archivo abierto, busca las líneas que definen las constantes de la base de datos. Se ven así:
// ** Configuraciones de MySQL - Puedes obtener esta información de tu proveedor de hosting ** //
define( 'DB_NAME', 'nombre_de_tu_base_de_datos' );
define( 'DB_USER', 'tu_usuario_de_base_de_datos' );
define( 'DB_PASSWORD', 'tu_contraseña_de_base_de_datos' );
define( 'DB_HOST', 'localhost' );
DB_NAME: Es el nombre exacto de tu base de datos.DB_USER: Es el nombre de usuario que tiene acceso a esa base de datos.DB_PASSWORD: Es la contraseña de ese usuario.DB_HOST: Es la dirección del servidor de la base de datos. En el 90% de los casos eslocalhost, pero a veces puede ser un host remoto comomysql.tudominio.com.
El Paso a Paso para Corregirlo
- Comprueba los datos: Asegúrate de que los valores de
DB_NAME,DB_USERyDB_PASSWORDson exactamente los que tienes en tu cPanel. Un error común es copiar y pegar un espacio extra o una letra de más. - Verifica el
DB_HOST: Si todo lo demás parece correcto, prueba a cambiarlocalhostpor127.0.0.1o viceversa. A veces, el servidor está configurado para aceptar conexiones solo por una de estas dos direcciones. - Revisa el prefijo de la base de datos: Al final del archivo, busca una línea como
$table_prefix = 'wp_';. Este valor debe coincidir con el prefijo que usan tus tablas en la base de datos. Si lo cambiaste alguna vez o tu hosting lo usa diferente (por ejemplo,miweb_), este es tu problema.
[TIP]
Si no estás seguro de cuáles son tus credenciales, ve a cPanel y busca la sección "Bases de datos MySQL". Ahí verás una lista de todas tus bases de datos y los usuarios asignados. Puedes verificar los nombres exactos y, si es necesario, cambiar la contraseña del usuario desde ahí. Asegúrate de actualizar también elwp-config.phpcon la nueva contraseña.
Solución 2: La Base de Datos Existe y el Usuario Tiene Permisos
A veces, el problema no es la contraseña, sino que el usuario no tiene permisos para acceder a esa base de datos concreta. Esto es más común de lo que crees, especialmente si has migrado el sitio o has creado una nueva base de datos.
Verificando y Corrigiendo Permisos en cPanel
- Accede a cPanel y busca la sección "Bases de datos MySQL".
- Verás dos listas: una con las bases de datos y otra con los usuarios.
- Busca el nombre de tu base de datos y el usuario que estás usando en tu
wp-config.php. - Si no están conectados, o quieres asegurarte de que todo está bien, desplázate hasta la sección "Añadir usuario a la base de datos".
- Selecciona el usuario y la base de datos en los menús desplegables y haz clic en "Añadir".
- Se abrirá una pantalla con los privilegios. Te recomendamos marcar la casilla "TODOS LOS PRIVILEGIOS" para evitar problemas de permisos. Luego, haz clic en "Realizar cambios".
[WARNING]
Si has cambiado la contraseña del usuario de la base de datos desde cPanel, DEBES actualizarla también en el archivowp-config.php. Este es un paso que se olvida con frecuencia y es una de las principales causas del error.
Solución 3: Reparar la Base de Datos (Método Integrado de WordPress)
WordPress tiene un mecanismo de reparación incorporado que puede solucionar problemas de tablas corruptas. Es muy fácil de activar, aunque es una solución temporal.
-
Abre tu archivo
wp-config.phpde nuevo (como hicimos en la Solución 1). -
Busca la línea que contiene
define('WP_DEBUG', false);o similar. -
Añade la siguiente línea justo encima de esa línea (o después de la línea del prefijo de la tabla):
define('WP_ALLOW_REPAIR', true); -
Guarda el archivo y súbelo de nuevo al servidor si lo estabas editando localmente.
-
Ahora, visita tu sitio web usando esta URL especial en tu navegador:
tudominio.com/wp-admin/maint/repair.php. -
Haz clic en el botón "Reparar base de datos" (o "Repair Database").
-
WordPress escaneará y reparará las tablas que estén dañadas.
[WARNING]
¡MUY IMPORTANTE! Una vez que termines, DEBES eliminar la líneadefine('WP_ALLOW_REPAIR', true);de tu archivowp-config.php. Si la dejas, cualquier persona podría acceder a esa URL y manipular tu base de datos. Es una puerta trasera peligrosa.
Solución 4: El Servidor de Base de Datos Está Caído o Sobrecargado
Si has verificado todos los datos y permisos, el problema podría no ser tuyo, sino del servidor. A veces, el servidor MySQL se cae o está tan sobrecargado que rechaza nuevas conexiones.
¿Cómo comprobarlo?
- Revisa el correo de tu hosting: A menudo, las empresas de hosting envían correos informando sobre mantenimientos programados o incidentes.
- Contacta con el soporte técnico: La forma más rápida de saber si el servidor está caído es contactar con tu proveedor de hosting. Ellos tienen herramientas internas para verificar el estado del servidor de bases de datos en tiempo real.
[INFO]
Si estás usando un hosting compartido, es muy común que el servidor de bases de datos se sobrecargue si otros sitios web en el mismo servidor están consumiendo muchos recursos. Si el problema es recurrente, quizás es hora de considerar un plan de hosting mejor (como VPS o dedicado).
Solución 5: Revisar el Puerto de Conexión a la Base de Datos
Aunque es menos común, a veces el servidor de base de datos no escucha en el puerto estándar (3306). Esto es más típico en configuraciones de hosting específicas o si tienes un servidor dedicado.
¿Cómo solucionarlo?
Si tu proveedor de hosting te ha indicado que uses un puerto específico, debes agregarlo a la constante DB_HOST.
En lugar de:
define('DB_HOST', 'localhost');
Deberías tener algo como:
define('DB_HOST', 'localhost:3307');
O si es un host remoto:
define('DB_HOST', 'mysql.tudominio.com:3307');
Consulta la documentación de tu hosting o contacta con su soporte para confirmar si necesitas un puerto diferente.
Solución 6: Restaurar Archivos del Núcleo de WordPress
A veces, un archivo de WordPress se corrompe o se modifica accidentalmente (por ejemplo, durante una actualización fallida o por un plugin malicioso). Esto puede causar el error de conexión.
Restauración Manual de Archivos
- Descarga una copia limpia de WordPress desde
es.wordpress.org. - Descomprime el archivo en tu computadora.
- Accede a tu servidor por FTP o al Administrador de archivos de cPanel.
- Sube todos los archivos de la carpeta
wp-adminywp-includesde la copia descargada, sobrescribiendo los existentes en tu servidor. - No sobrescribas los archivos
wp-config.phpni la carpetawp-content(para no perder tus plugins, temas y medios).
[WARNING]
Esta acción es segura, pero asegúrate de no borrar la carpetawp-content. Ahí es donde viven tus plugins, temas y las imágenes que subes. Si la sobrescribes, perderás tu personalización.
Solución 7: Comprobar los Permisos de Archivos y Carpetas
Los permisos de archivos demasiado estrictos pueden impedir que WordPress lea el archivo wp-config.php o que se comunique con otros archivos necesarios.
Configuración Correcta de Permisos
- Archivos (como
wp-config.php): Deben tener permisos644. - Carpetas (como
wp-content): Deben tener permisos755.
¿Cómo cambiarlos en cPanel?
- Ve al Administrador de archivos.
- Navega hasta la raíz de tu WordPress.
- Selecciona el archivo o carpeta, haz clic derecho y elige "Permisos".
- Asegúrate de que las casillas estén marcadas como se indica arriba.
- Haz clic en "Cambiar permisos".
Solución Extra: El Problema No Está en WordPress, Sino en el DNS
En raras ocasiones, el error puede deberse a que tu dominio no está apuntando correctamente al servidor. Esto es menos común, pero si acabas de cambiar de hosting, puede ser la causa.
Verificación Rápida
- Intenta acceder a tu sitio usando la IP directa del servidor en lugar del dominio. Si funciona, el problema es el DNS.
- Espera unas horas a que el DNS se propague o contacta con tu proveedor de DNS.
[TIP]
Si después de probar todos estos pasos el problema persiste, te recomiendo que contactes con el soporte técnico de tu empresa de hosting. Ellos tienen acceso a los logs del servidor y pueden ver el error exacto que se está produciendo. Diles que ya has revisado elwp-config.php, los permisos y que has intentado reparar la base de datos. Esto les dará una pista muy valiosa para ayudarte más rápido.
Preguntas Frecuentes (FAQ)
¿Por qué veo este error después de cambiar mi contraseña de cPanel?
Si cambiaste la contraseña del usuario de la base de datos en cPanel, debes actualizar también la contraseña en el archivo wp-config.php. Son dos cosas independientes.
¿Puede un plugin causar este error?
Sí, aunque es raro. Un plugin mal codificado o con una actualización defectuosa puede intentar hacer consultas a la base de datos de una manera que la rompa. Si puedes, desactiva todos los plugins renombrando la carpeta wp-content/plugins a wp-content/plugins_bak por FTP. Si el error desaparece, el problema es un plugin.
¿Qué es Syspanel y qué tiene que ver con esto?
Syspanel es un panel de control alternativo a cPanel que algunos proveedores de hosting ofrecen. Si tu hosting usa Syspanel, el proceso para acceder a las bases de datos y archivos es muy similar, pero la interfaz es diferente. Para acceder a tu panel de control, normalmente lo haces a través de tudominio.com:2106. Una vez dentro, busca las secciones de "Archivos" y "Bases de datos MySQL".
¿Perderé mis datos si sigo estos pasos?
No. Todos los pasos descritos anteriormente están diseñados para no borrar ningún dato. La restauración de archivos del núcleo no afecta a tu contenido, y la reparación de la base de datos solo corrige tablas dañadas.
Espero que esta guía extensa te haya sido de gran ayuda. Recuerda siempre ir paso a paso y con calma. El error de conexión a la base de datos es un obstáculo, pero con paciencia y esta guía, lo superarás sin problema. ¡Buena suerte!
