26 de octubre de 2026
image-19.jpg-19

¿Cómo solucionar el error de conexión a la base de datos en WordPress? 🛠️

Una mañana cualquiera, abres tu sitio web y aparece esa frase seca, casi burocrática: “Error establishing a database connection”. No hay diseño, no hay menú, no hay tienda, no hay blog. Solo una pared blanca con la delicadeza de una puerta cerrada en la cara. WordPress, tan locuaz para publicar, se vuelve mudo cuando no puede hablar con MySQL.

🔎 Diagnóstico paso a paso
🧩 wp-config.php
🗄️ MySQL / MariaDB
🔐 Seguridad
⚡ Prevención y rendimiento

El error de conexión a la base de datos en WordPress significa, en términos simples, que WordPress no puede conectarse a la base de datos donde vive casi todo lo importante: entradas, páginas, usuarios, pedidos de WooCommerce, ajustes del tema, opciones de plugins y esa configuración que alguien tocó hace tres años y nadie recuerda. Los archivos del sitio siguen ahí, como una casa con fachada intacta; pero la memoria de la casa está inaccesible, como una biblioteca hundida bajo llave.

La buena noticia: en muchos casos se soluciona sin dramatismo. La mala, porque siempre hay una mala noticia esperando con una taza de café frío, es que conviene actuar con método. Cambiar cosas al azar en producción es una forma sofisticada de hacer turismo por el desastre.

Ruta rápida de esta guía

  1. Qué significa realmente el error
  2. Causas más frecuentes
  3. Qué hacer antes de tocar nada
  4. Revisar wp-config.php
  5. Verificar credenciales y permisos
  6. Comprobar el servidor de base de datos
  7. Reparar tablas dañadas
  8. Consultar logs y modo debug
  9. Diagnóstico con WP-CLI
  10. Cuándo escalar al hosting
  11. Cómo evitar que vuelva a ocurrir

Qué significa realmente “Error establishing a database connection”

WordPress funciona como una conversación constante entre dos mundos: por un lado, los archivos PHP, temas y plugins; por otro, la base de datos MySQL o MariaDB. Cuando visitas una página, WordPress pregunta: “¿Qué título tiene esta entrada? ¿Qué usuario la escribió? ¿Qué opciones hay configuradas? ¿Qué productos están publicados?”. La base de datos responde. O debería.

Cuando aparece el error, esa conversación se rompe. Puede ser por credenciales incorrectas, un servidor MySQL caído, tablas corruptas, límites de recursos superados, permisos insuficientes o incluso un cambio reciente en el hosting. Es decir: el síntoma es uno, pero las causas pueden ser muchas. Como fiebre en medicina: útil para alertar, inútil para diagnosticar sin mirar más.

Dato importante: WordPress guarda las credenciales de conexión en el archivo wp-config.php. Allí se definen el nombre de la base de datos, el usuario, la contraseña y el servidor de base de datos mediante constantes como DB_NAME, DB_USER, DB_PASSWORD y DB_HOST.

La ironía, bastante cruel, es que muchas webs modernas tienen constructores visuales, animaciones, formularios inteligentes y banners con promesas de conversión; pero si una línea de configuración está mal escrita, todo ese palacio digital se convierte en una postal muda.

Causas habituales del error de conexión a la base de datos en WordPress

No todas las averías huelen a incendio. Algunas se parecen más a una llave mal puesta en una cerradura: casi todo está bien, pero nada abre. Estas son las causas más comunes:

Causa Qué ocurre Señales frecuentes
Credenciales incorrectas El usuario, contraseña, nombre de base de datos o host no coinciden con los datos reales. El error aparece tras migrar, restaurar backup, cambiar hosting o modificar wp-config.php.
Servidor MySQL/MariaDB caído La base de datos no responde o el servicio está detenido. Otros sitios del mismo servidor fallan; phpMyAdmin carga lento o no abre.
Límites de recursos agotados Demasiadas conexiones simultáneas, CPU alta, memoria insuficiente o consultas pesadas. El error aparece de forma intermitente, sobre todo en picos de tráfico.
Tablas corruptas Una o varias tablas de la base de datos están dañadas. El front-end falla, el panel puede mostrar mensajes como “One or more database tables are unavailable”.
Permisos insuficientes del usuario MySQL El usuario existe, pero no tiene privilegios adecuados sobre la base de datos. Frecuente tras migraciones manuales o cambios desde cPanel/Plesk.
Nombre de host incorrecto DB_HOST no apunta al servidor correcto. En algunos hostings no es localhost, sino una dirección específica.
Plugins o temas con consultas abusivas Generan demasiadas consultas o bloqueos, saturando MySQL. El problema aparece tras activar un plugin, importar datos o lanzar campañas.
Ataques o bots Tráfico automatizado consume recursos hasta dejar la base de datos sin aire. Picos extraños en logs, muchas peticiones a wp-login.php o XML-RPC.

Antes de tocar nada: respira, haz copia y mira el contexto 🧯

Hay una vieja costumbre entre administradores de sistemas: antes de arreglar, observar. Parece obvio. No lo es. En el apuro, uno entra por FTP, edita archivos, borra cachés, cambia contraseñas, reinicia servicios y termina sin saber si apagó el fuego o solo movió el humo.

1. Comprueba si el error afecta a todo el sitio

Visita varias URLs:

  • tudominio.com
  • tudominio.com/wp-admin/
  • Una entrada antigua
  • Una página de producto si usas WooCommerce

Si todo falla, probablemente hay un problema de conexión general. Si solo falla el panel o una sección, podría tratarse de tablas dañadas, plugins problemáticos o consultas específicas.

2. Revisa si hubo cambios recientes

Pregúntate, con honestidad de detective cansado:

  • ¿Migraste el sitio a otro servidor?
  • ¿Restauraste una copia de seguridad?
  • ¿Cambiaste la contraseña del usuario de base de datos?
  • ¿Actualizaste WordPress, PHP, plugins o tema?
  • ¿Instalaste un plugin de seguridad, caché o WooCommerce?
  • ¿Tu hosting anunció mantenimiento?

3. Crea una copia de seguridad

Si todavía tienes acceso al panel del hosting, genera un backup de archivos y base de datos antes de intervenir. Si no puedes exportar la base de datos porque MySQL no responde, al menos descarga los archivos por SFTP o usa la herramienta de copias del proveedor.

Importante: no ejecutes reparaciones, restauraciones ni cambios masivos sin copia previa si existe la mínima posibilidad de obtenerla. Reparar sin respaldo es como operar con las luces parpadeando: puede salir bien, sí, pero no es precisamente una estrategia.

Revisar el archivo wp-config.php: la puerta estrecha de WordPress

El archivo wp-config.php suele estar en la raíz de la instalación, junto a carpetas como wp-admin, wp-content y wp-includes. Puedes acceder mediante SFTP, SSH o el administrador de archivos del hosting.

Busca estas líneas:

define( 'DB_NAME', 'nombre_de_la_base_de_datos' );
define( 'DB_USER', 'usuario_de_base_de_datos' );
define( 'DB_PASSWORD', 'contraseña_del_usuario' );
define( 'DB_HOST', 'localhost' );

Verifica cuatro elementos:

  1. DB_NAME: debe coincidir exactamente con el nombre de la base de datos.
  2. DB_USER: debe ser un usuario MySQL válido.
  3. DB_PASSWORD: debe ser la contraseña correcta. Ojo con espacios copiados accidentalmente.
  4. DB_HOST: suele ser localhost, pero no siempre. Algunos proveedores usan hosts como mysql.tudominio.com, una IP interna o nombres tipo db123.hosting.com.

La antítesis aquí es casi teatral: un CMS enorme, flexible, capaz de sostener periódicos, academias y tiendas internacionales; dependiente, sin embargo, de cuatro valores diminutos. Gigante por fuera, alfiler por dentro.

No compartas ni publiques el contenido completo de wp-config.php. Puede contener credenciales, claves de seguridad y configuraciones sensibles. Si necesitas pedir ayuda, oculta contraseñas, salts y datos privados.

Errores comunes en wp-config.php

  • Comillas modificadas por copiar desde un editor enriquecido: usa comillas simples o dobles normales, no comillas tipográficas.
  • Espacios antes o después de la contraseña.
  • Nombre de base de datos sin prefijo del hosting. En cPanel, por ejemplo, suele ser algo como usuariohosting_basedatos.
  • Usuario MySQL creado, pero no asignado a la base de datos.
  • DB_HOST incorrecto tras una migración.

Verificar credenciales y permisos desde el hosting

Si los datos del archivo parecen correctos, toca contrastarlos con el panel del servidor. En cPanel, Plesk, DirectAdmin o paneles administrados de WordPress, busca una sección llamada “Bases de datos MySQL”, “Database Management” o similar.

Comprueba que la base de datos existe

Puede sonar demasiado elemental, pero ocurre: durante una migración se suben los archivos y se olvida importar la base de datos. La web queda como un teatro con escenario y butacas, pero sin actores.

Comprueba que el usuario existe

El usuario definido en DB_USER debe existir en MySQL. Si no existe, créalo o ajusta el archivo wp-config.php para usar uno válido.

Comprueba que el usuario está asignado a la base de datos

En muchos paneles no basta con crear el usuario. Hay que asociarlo a una base concreta y conceder permisos. Para WordPress, normalmente se requieren privilegios como:

  • SELECT
  • INSERT
  • UPDATE
  • DELETE
  • CREATE
  • ALTER
  • INDEX
  • DROP, aunque conviene tratarlo con prudencia

En entornos compartidos, el botón suele llamarse “All Privileges”. En servidores propios, puede hacerse con SQL, adaptando nombres y evitando ejecutar comandos si no se tiene claro el alcance:

GRANT ALL PRIVILEGES ON nombre_base_datos.* TO 'usuario'@'localhost';
FLUSH PRIVILEGES;

Si el usuario se conecta desde otro host, 'localhost' podría no ser correcto. En infraestructura separada, puede ser una IP privada, un hostname interno o '%', aunque este último abre más superficie y debe usarse con criterio.

Comprobar si MySQL o MariaDB está funcionando

Si las credenciales son correctas, puede que el problema no esté en WordPress sino en el propio servicio de base de datos. WordPress llama, pero nadie contesta. Y no, por una vez no es culpa del plugin de sliders, aunque no conviene absolverlo para siempre.

En hosting compartido

Revisa:

  • Estado del servicio en el panel del proveedor.
  • Notificaciones de mantenimiento.
  • Si phpMyAdmin carga correctamente.
  • Si otros sitios alojados en la misma cuenta presentan fallos.
  • Consumo de CPU, RAM, procesos y conexiones MySQL.

En VPS o servidor dedicado

Si tienes acceso SSH y permisos suficientes, puedes revisar el estado del servicio. Según la distribución, el servicio puede llamarse mysql o mariadb:

systemctl status mysql
systemctl status mariadb

Si está detenido, puedes iniciarlo:

sudo systemctl start mysql

O, en MariaDB:

sudo systemctl start mariadb

Después conviene mirar logs. En Debian/Ubuntu, suelen encontrarse en rutas como:

/var/log/mysql/error.log
/var/log/mysql/mysql.log
/var/log/syslog

En CentOS, AlmaLinux o Rocky Linux, revisa:

journalctl -u mariadb
journalctl -u mysqld

Cuidado con reiniciar servicios en producción. Reiniciar MySQL puede cortar conexiones activas, afectar otros sitios y agravar problemas si hay corrupción o falta de espacio en disco. En servidores críticos, primero revisa logs, recursos y backups.

Probar conexión manual

Desde SSH, puedes probar si el usuario conecta:

mysql -u usuario -p -h localhost nombre_base_datos

Si falla con “Access denied”, el problema apunta a usuario, contraseña o permisos. Si falla con “Can’t connect to MySQL server”, mira servicio, host, puerto, firewall o socket.

Reparar tablas dañadas de WordPress 🧰

Las tablas pueden corromperse por cierres abruptos del servidor, falta de espacio en disco, fallos de hardware, problemas en MySQL, importaciones incompletas o, simplemente, por esa suma de pequeñas tragedias que llamamos mantenimiento insuficiente.

WordPress incluye una función de reparación básica. Para activarla, añade temporalmente esta línea en wp-config.php, antes de la línea que dice /* That's all, stop editing! Happy publishing. */:

define( 'WP_ALLOW_REPAIR', true );

Después visita:

https://tudominio.com/wp-admin/maint/repair.php

Verás dos opciones:

  • Repair Database: intenta reparar tablas dañadas.
  • Repair and Optimize Database: repara y optimiza tablas, lo que puede tardar más.

Elimina la línea WP_ALLOW_REPAIR cuando termines. Esa página no requiere iniciar sesión mientras la constante esté activa. Dejarla habilitada sería una invitación con alfombra roja a curiosos y bots, que nunca faltan.

Reparar desde phpMyAdmin

Si phpMyAdmin funciona:

  1. Abre la base de datos de WordPress.
  2. Selecciona las tablas.
  3. En el menú desplegable, elige “Repair table”.
  4. Si procede, ejecuta también “Optimize table”.

En sitios grandes, especialmente WooCommerce, LMS o membresías, evita reparar a ciegas en horas de tráfico. Una tabla de pedidos no es una servilleta: si se rompe, mancha bastante más.

Reparar desde línea de comandos

Con MySQL:

mysqlcheck -u usuario -p --repair nombre_base_datos

Para optimizar:

mysqlcheck -u usuario -p --optimize nombre_base_datos

Estas herramientas son útiles, pero deben usarse con respaldo reciente y conocimiento del motor de almacenamiento. En InnoDB moderno, algunos procesos de reparación difieren de MyISAM; no todo se arregla con el mismo martillo.

Activar debug y consultar registros sin convertir el sitio en un escaparate de errores

El modo debug de WordPress puede ayudarte a ver errores más específicos, pero nunca conviene mostrarlos públicamente. Un mensaje técnico visible en producción puede revelar rutas internas, nombres de archivos o pistas para atacantes. La transparencia está muy bien en política; en errores PHP, un poco menos.

En wp-config.php, puedes configurar:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );

Esto guarda errores en:

wp-content/debug.log

Busca mensajes relacionados con:

  • mysqli_real_connect()
  • Access denied for user
  • Unknown database
  • Too many connections
  • Table marked as crashed
  • Connection refused

Buena práctica: tras diagnosticar, desactiva WP_DEBUG o mantén solo los registros necesarios protegidos. Además, evita que debug.log sea accesible desde la web mediante reglas del servidor o configuración del plugin de seguridad.

Diagnóstico con WP-CLI para desarrolladores y administradores

Si tienes acceso SSH y WP-CLI instalado, puedes diagnosticar con más elegancia. WP-CLI es como una linterna fina en un sótano lleno de tuberías: no repara todo, pero muestra dónde está la fuga.

Comprobar conexión a la base de datos

wp db check

Si responde correctamente, la conexión básica funciona. Si muestra errores, lee con atención el mensaje: suele indicar si el problema es autenticación, host, socket o tablas.

Ver credenciales detectadas por WordPress

wp config get DB_NAME
wp config get DB_USER
wp config get DB_HOST

Por seguridad, evita imprimir o compartir DB_PASSWORD.

Reparar base de datos

wp db repair

Optimizar base de datos

wp db optimize

Exportar backup antes de cambios

wp db export backup-previo.sql

Si el comando de exportación falla porque la base no conecta, esa misma falla ya es una pista. No es poco: a veces el diagnóstico consiste en escuchar cómo se rompe algo.

¿Puede un plugin causar el error de conexión?

Sí, aunque no siempre de forma directa. Un plugin normalmente no cambia las credenciales de MySQL, pero puede saturar la base de datos con consultas pesadas, crear tablas defectuosas, ejecutar tareas programadas mal diseñadas o disparar procesos en bucle. Algunos plugins de estadísticas, búsqueda, seguridad, backups o sincronización externa pueden generar una carga considerable.

Hay plugins excelentes, desde luego. También hay otros que entran en la base de datos como elefante en cristalería, con esa confianza inexplicable de quien no pagará la factura del vidrio.

Cómo aislar plugins sin acceso al panel

Si no puedes entrar a wp-admin, accede por SFTP o administrador de archivos y renombra la carpeta:

wp-content/plugins

Por ejemplo:

plugins-desactivados

Esto desactiva todos los plugins. Si el sitio vuelve, crea de nuevo una carpeta plugins vacía y ve moviendo los plugins uno a uno para identificar el culpable.

Matiz importante: si el error es puramente de conexión —credenciales incorrectas o MySQL caído— desactivar plugins no lo arreglará. Pero si el problema es saturación, consultas abusivas o tareas cron descontroladas, puede ayudarte a recuperar el acceso.

Revisar tareas cron de WordPress

WP-Cron puede acumular eventos si el sitio recibe tráfico irregular o si algún plugin programa tareas excesivas. Con WP-CLI:

wp cron event list

Si hay miles de eventos pendientes, conviene revisar el origen antes de eliminarlos. En tiendas online, membresías o reservas, borrar tareas sin criterio puede interrumpir procesos legítimos.

Cuándo contactar al hosting y qué datos enviar

Hay momentos en los que insistir desde WordPress es como gritarle a una tubería rota. Si el servidor de base de datos está caído, saturado o bloqueado por límites internos, tu proveedor debe intervenir.

Contacta al hosting si observas:

  • phpMyAdmin no carga o muestra errores de conexión.
  • El error aparece y desaparece sin cambios tuyos.
  • El panel indica “Too many connections”.
  • Hay errores de disco lleno.
  • MySQL/MariaDB está detenido y no tienes permisos para reiniciarlo.
  • El sitio falla tras una migración gestionada por el proveedor.
  • Otros sitios del mismo servidor tienen problemas.

Información útil para soporte

Un buen ticket ahorra horas. Incluye:

  • Dominio afectado.
  • Hora aproximada del primer fallo y zona horaria.
  • Captura del error.
  • Si afecta front-end, panel o ambos.
  • Cambios recientes realizados.
  • Mensajes de debug.log o logs del hosting, ocultando datos sensibles.
  • Confirmación de que revisaste DB_NAME, DB_USER y DB_HOST.

Evita enviar contraseñas por ticket salvo que el proveedor lo solicite mediante un canal seguro. Lo urgente no debería derrotar a lo prudente.

El error después de migrar WordPress: el clásico moderno 🚚

Muchas incidencias aparecen justo después de una migración. No por casualidad: mover WordPress no es solo trasladar archivos, sino coordinar rutas, dominios, base de datos, usuarios, prefijos, versiones de PHP y configuración del servidor. Es mudarse de casa con biblioteca, cocina, cerraduras y gato. Algo se esconde bajo el sofá.

Checklist tras migración

  • La base de datos fue importada completamente.
  • wp-config.php apunta al nuevo nombre de base de datos.
  • El usuario MySQL pertenece a la base de datos correcta.
  • DB_HOST coincide con el dato del nuevo hosting.
  • El prefijo de tablas en $table_prefix coincide con las tablas reales.
  • La versión de PHP es compatible con WordPress, tema y plugins.
  • MySQL/MariaDB está activo y acepta conexiones desde el servidor web.
  • No hay reglas de firewall bloqueando el puerto de base de datos.

El prefijo de tablas suele pasar desapercibido. En wp-config.php verás algo como:

$table_prefix = 'wp_';

Si tus tablas se llaman abc_posts, abc_options y abc_users, el prefijo debe ser:

$table_prefix = 'abc_';

Un prefijo incorrecto no siempre genera exactamente el error de conexión; a veces produce instalaciones “vacías” o comportamientos extraños. Pero en diagnósticos reales, conviene mirarlo. Las cosas pequeñas tienen la desagradable manía de mandar.

Casos especiales: WooCommerce, membresías y sitios con mucho tráfico

En una web corporativa con pocas páginas, la base de datos puede vivir tranquila. En una tienda WooCommerce, en cambio, trabaja como una cocina en hora punta: pedidos, carritos, sesiones, cupones, inventario, pagos, webhooks, correos, búsquedas. Todo ocurre a la vez y todo parece urgente.

Si el error aparece en campañas, lanzamientos o temporadas de alto tráfico, considera:

  • Optimizar consultas lentas.
  • Revisar plugins de búsqueda y filtros.
  • Activar caché de página donde sea compatible.
  • Usar caché de objetos persistente con Redis o Memcached.
  • Limpiar sesiones expiradas de WooCommerce.
  • Revisar el tamaño de tablas como wp_options, wp_postmeta y tablas de acciones programadas.
  • Separar recursos en hosting administrado o VPS dimensionado correctamente.

La tabla wp_options y el autoload

Una causa silenciosa de lentitud es una tabla wp_options inflada, especialmente con muchas opciones cargadas automáticamente mediante autoload = yes. No siempre causa el error de conexión, pero puede contribuir a saturación, tiempos de respuesta altos y consumo excesivo de memoria.

Consulta orientativa:

SELECT SUM(LENGTH(option_value)) AS autoload_size
FROM wp_options
WHERE autoload = 'yes';

Si el tamaño es excesivo, revisa opciones huérfanas de plugins antiguos. No borres entradas sin saber qué hacen; algunas parecen basura y son el hilo que sostiene medio sitio, como esos tornillos que sobran al montar un mueble y luego explican por qué se tambalea.

Seguridad: cuando el error es síntoma de abuso

No todo error de base de datos nace de una mala configuración. A veces el sitio está bajo presión: bots atacando wp-login.php, intentos masivos contra XML-RPC, scraping agresivo, escaneos de vulnerabilidades, consultas maliciosas o explotación de plugins desactualizados.

Señales de posible ataque o abuso

  • Incremento brusco de tráfico desde pocas IPs.
  • Muchas peticiones a /wp-login.php.
  • Uso intensivo de /xmlrpc.php.
  • Errores 500 intermitentes junto al error de base de datos.
  • Procesos PHP numerosos o consumo anormal de CPU.
  • Archivos desconocidos en wp-content, uploads o la raíz.

Medidas recomendadas

  • Actualizar WordPress, plugins y temas.
  • Eliminar plugins y temas que no se usan.
  • Activar autenticación de dos factores para administradores.
  • Limitar intentos de inicio de sesión.
  • Proteger o restringir XML-RPC si no se utiliza.
  • Implementar WAF, por ejemplo a nivel de hosting o CDN.
  • Revisar usuarios administradores desconocidos.
  • Escanear malware con herramientas reputadas.
  • Cambiar credenciales de base de datos si hay sospecha de filtración.

Si sospechas compromiso: no te limites a “arreglar” la conexión. Aísla, revisa integridad de archivos, rota contraseñas, analiza logs y restaura desde una copia limpia si es necesario. Un sitio comprometido que vuelve a cargar no está sano; solo está sonriendo con fiebre.

Cómo evitar que el error vuelva a aparecer ⚡

Prevenir este error no consiste en rezar ante el panel del hosting, aunque algunos lunes parezca una opción razonable. Consiste en reducir puntos débiles, observar señales tempranas y no tratar la base de datos como un sótano donde se tira todo lo que no se quiere mirar.

Backups verificables

Programa copias automáticas de archivos y base de datos. Pero, sobre todo, prueba restauraciones. Un backup que nadie ha probado es una promesa escrita en agua.

Monitorización

Usa alertas de uptime, consumo de recursos, espacio en disco y errores 500. Detectar un fallo a los cinco minutos no es lo mismo que descubrirlo por un cliente molesto.

Actualizaciones con criterio

Mantén WordPress, PHP, temas y plugins actualizados. En sitios críticos, usa staging antes de producción.

Hosting adecuado

Una tienda con miles de pedidos no debería vivir en un plan mínimo compartido. La economía mal entendida suele enviar facturas con intereses.

Caché y optimización

Implementa caché de página, caché de objetos, CDN y optimización de consultas cuando el proyecto lo requiera.

Higiene de base de datos

Limpia revisiones excesivas, transients expirados, tablas huérfanas y registros innecesarios, siempre con copia previa.

Configurar caché de objetos persistente

En sitios dinámicos, Redis o Memcached pueden reducir consultas repetitivas a la base de datos. No sustituyen a una base bien configurada, pero alivian la carga. Es la diferencia entre preguntar lo mismo mil veces y tener una libreta cerca.

Optimizar el cron real

En sitios con tráfico irregular o muchas tareas, conviene desactivar WP-Cron por visita y usar cron del sistema. En wp-config.php:

define( 'DISABLE_WP_CRON', true );

Y luego programar una tarea en el servidor:

*/5 * * * * wget -q -O - https://tudominio.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1

Esto debe adaptarse al hosting y al volumen del sitio. Cada cinco minutos suele ser razonable para muchos proyectos, pero no es una ley natural.

Protocolo rápido de actuación

Si necesitas una guía práctica para actuar sin perderte, sigue este orden:

  1. Confirma el alcance: front-end, panel, todo el sitio o error intermitente.
  2. Revisa cambios recientes: migración, actualización, restauración, cambio de contraseña.
  3. Haz backup: archivos y base de datos si es posible.
  4. Comprueba wp-config.php: DB_NAME, DB_USER, DB_PASSWORD, DB_HOST.
  5. Verifica en el hosting: base existente, usuario asignado y privilegios correctos.
  6. Prueba phpMyAdmin: si no conecta, puede ser MySQL o credenciales.
  7. Consulta logs: WordPress, PHP, MySQL y servidor web.
  8. Repara tablas: solo si hay indicios de corrupción y con copia previa.
  9. Desactiva plugins: si sospechas saturación o fallo tras instalación.
  10. Escala al hosting: si hay caída de servicio, límites, disco lleno o errores de infraestructura.

Regla de oro: cambia una cosa por vez y documenta cada paso. En mantenimiento web, la memoria humana es un plugin poco fiable.

Preguntas frecuentes sobre el error de base de datos en WordPress

¿El error significa que perdí mi web?

No necesariamente. En la mayoría de casos, los archivos y datos siguen existiendo. El problema es que WordPress no puede acceder a la base de datos. Aun así, conviene actuar con cuidado y hacer copias antes de reparar o restaurar.

¿Puede solucionarse solo?

Sí, si el origen es una caída temporal de MySQL o un pico de recursos del hosting. Pero si ocurre más de una vez, no lo ignores. Los errores intermitentes son como goteras: empiezan con una mancha pequeña y terminan explicando por qué el techo tiene carácter propio.

¿Debo cambiar la contraseña de la base de datos?

Solo si sospechas que es incorrecta, fue comprometida o necesitas regenerarla desde el hosting. Si la cambias, recuerda actualizar DB_PASSWORD en wp-config.php.

¿Es seguro usar la reparación de WordPress?

Es una herramienta legítima, pero debe usarse con copia previa. Además, hay que eliminar WP_ALLOW_REPAIR al terminar para no dejar expuesta la página de reparación.

¿Un CDN como Cloudflare soluciona este problema?

No directamente. Un CDN puede reducir carga sirviendo contenido estático y mitigando tráfico malicioso, pero si WordPress necesita consultar la base de datos y MySQL no responde, el problema persistirá. Puede ayudar en prevención, no sustituye al diagnóstico.

¿Qué diferencia hay entre este error y un error 500?

El error de conexión a la base de datos es específico: WordPress no logra conectarse a MySQL/MariaDB. Un error 500 es más amplio y puede deberse a PHP, memoria, permisos, reglas .htaccess, plugins, tema o servidor.

¿Conviene optimizar la base de datos cada semana?

Depende del sitio. Optimizar por rutina sin entender el tamaño, motor y uso de tablas no siempre aporta beneficios. En sitios grandes, puede incluso bloquear tablas temporalmente. Mejor monitorizar, limpiar con criterio y programar mantenimiento en horas de baja actividad.

Cuando WordPress calla, la base de datos suele estar contando la historia

El error de conexión a la base de datos en WordPress parece brutal porque no ofrece matices: una frase, una pantalla vacía, un sitio detenido. Pero detrás de esa sequedad hay pistas. Credenciales, permisos, host, servicio MySQL, tablas, recursos, plugins, seguridad. El trabajo consiste en seguirlas sin prisa inútil y sin valentía teatral.

WordPress es, al mismo tiempo, robusto y frágil: capaz de sostener proyectos inmensos, vulnerable a una contraseña mal copiada; flexible como un río, dependiente de compuertas muy concretas. Esa contradicción no lo hace peor. Lo hace real.

Si algo deja esta avería, además del susto, es una lección de mantenimiento web: los sitios no solo se diseñan, se cuidan. Una base de datos sana, copias verificadas, hosting proporcionado, actualizaciones prudentes y registros observados a tiempo convierten una emergencia en una incidencia manejable. Y eso, en el mundo digital, ya es una pequeña forma de paz. ✅

Deja una respuesta