Reparar base de datos WordPress corrupta fácilmente
Guía completa para reparar una base de datos WordPress corrupta fácilmente, paso a paso, sin perder datos y mejorando el rendimiento del sitio.
Índice
- ¿Qué es una base de datos WordPress corrupta?
- Síntomas comunes de una base de datos corrupta
- Causas frecuentes de corrupción en la base de datos
- Pasos previos: copias de seguridad y acceso
- Reparar la base de datos desde wp-config.php
- Reparar tablas MySQL desde phpMyAdmin
- Usar plugins para reparar y optimizar la base de datos
- Restaurar la base de datos desde una copia de seguridad
- Buenas prácticas para evitar futuras corrupciones
- Preguntas frecuentes
¿Qué es una base de datos WordPress corrupta?
En WordPress, la base de datos es el lugar donde se almacena prácticamente toda la información de tu sitio: entradas, páginas, usuarios, configuraciones, comentarios, menús y más. Cuando hablamos de una base de datos WordPress corrupta, nos referimos a que una o varias tablas de esa base de datos han sufrido daños, contienen datos inconsistentes o índices rotos que impiden que WordPress lea o escriba correctamente.
La corrupción puede ser parcial (afecta a una tabla concreta, como wp_posts o wp_options) o total (varias tablas dañadas, errores de conexión o imposibilidad de acceder al panel de administración). Aunque suena grave, en muchos casos es posible reparar la base de datos de WordPress fácilmente si se actúa con método y se cuenta con una copia de seguridad reciente.
Idea clave
Una base de datos corrupta no significa necesariamente que hayas perdido tu sitio. Con una copia de seguridad y las herramientas adecuadas, la mayoría de los problemas se pueden solucionar en pocos pasos.
Síntomas comunes de una base de datos corrupta
Identificar a tiempo los síntomas de una base de datos corrupta en WordPress te ayudará a actuar antes de que el problema se agrave. Algunos errores pueden confundirse con fallos de plugins o del servidor, por lo que conviene conocer las señales más habituales.
- Error "Error establishing a database connection" al intentar acceder al sitio o al panel de administración.
- Páginas en blanco (pantalla blanca de la muerte) sin mensajes de error visibles.
- Errores 500 o mensajes de servidor interno al cargar ciertas secciones.
- Contenido que desaparece: entradas, páginas o menús que dejan de mostrarse sin motivo aparente.
- Problemas al iniciar sesión en el panel de administración o bucles de redirección.
- Mensajes de error de MySQL o de tablas marcadas como "in use" o "marked as crashed" en herramientas como phpMyAdmin.
- Rendimiento muy lento al guardar entradas, actualizar plugins o realizar consultas complejas.
Consejo práctico
Anota o haz capturas de pantalla de cualquier mensaje de error que aparezca. Esa información será muy útil para determinar si el problema está en la base de datos, en la configuración de WordPress o en el servidor.
Causas frecuentes de corrupción en la base de datos
La corrupción de la base de datos en WordPress suele ser el resultado de una combinación de factores técnicos y de mantenimiento. Conocer las causas más habituales te permitirá prevenir futuros incidentes y reforzar la estabilidad de tu sitio.
- Cortes de energía o caídas del servidor durante operaciones de escritura intensiva (actualizaciones, importaciones masivas, etc.).
- Plugins o temas mal programados que realizan consultas inseguras o modifican la estructura de la base de datos sin control.
- Actualizaciones interrumpidas de WordPress, plugins o temas que dejan tablas a medio modificar.
- Falta de espacio en disco en el servidor, que impide que MySQL complete operaciones de escritura.
- Configuraciones inadecuadas de MySQL/MariaDB, como límites de memoria o tiempo de ejecución demasiado bajos.
- Ataques de fuerza bruta o inyecciones SQL que explotan vulnerabilidades y dejan datos inconsistentes.
- Exceso de datos basura (revisiones, transients caducados, tablas huérfanas) que sobrecargan la base de datos.
Importante
Muchas corrupciones se originan en un mantenimiento deficiente. Mantener WordPress, plugins y temas actualizados, junto con una política de copias de seguridad y limpieza periódica, reduce drásticamente el riesgo de problemas graves en la base de datos.
Pasos previos: copias de seguridad y acceso al servidor
Antes de intentar reparar una base de datos WordPress corrupta, es esencial preparar el entorno para minimizar riesgos. Cualquier acción incorrecta puede agravar el problema, por lo que estos pasos previos son obligatorios.
1. Realiza una copia de seguridad completa
Aunque la base de datos ya presente errores, es fundamental crear una copia de seguridad de todo lo que sea posible. Idealmente, deberías disponer de:
- Backup de la base de datos en formato SQL o comprimido (SQL.gz).
- Copia de los archivos del sitio: carpeta
wp-content,wp-config.phpy demás archivos de WordPress. - Backups automáticos del hosting, si tu proveedor los ofrece, para tener un punto de restauración adicional.
Puedes generar la copia de la base de datos desde phpMyAdmin, desde la línea de comandos (mysqldump) o utilizando un plugin de copias de seguridad si aún tienes acceso al panel de administración.
2. Verifica tus credenciales de acceso
Asegúrate de tener a mano los datos de acceso que vas a necesitar durante el proceso de reparación:
- Acceso al panel de control del hosting (cPanel, Plesk, panel propio, etc.).
- Acceso a phpMyAdmin o a otra herramienta de gestión de bases de datos.
- Acceso por FTP/SFTP o al administrador de archivos del hosting para editar
wp-config.php. - Usuario, contraseña, nombre de base de datos y host de la base de datos (definidos en
wp-config.php).
3. Activa el modo de depuración (opcional)
Si todavía puedes acceder parcialmente al sitio, activar la depuración de WordPress puede ayudarte a identificar errores concretos relacionados con la base de datos. Para ello, edita el archivo wp-config.php y añade o modifica las siguientes líneas:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
Los errores se registrarán en el archivo wp-content/debug.log, lo que te permitirá revisar mensajes específicos sin mostrarlos a los visitantes.
Reparar la base de datos desde wp-config.php
WordPress incluye una herramienta interna para reparar y optimizar la base de datos de forma automática. Esta opción es especialmente útil cuando el problema no es extremadamente grave y aún se puede acceder a la base de datos, pero ciertas tablas presentan errores.
1. Habilitar la herramienta de reparación
Para activar la función de reparación, debes editar el archivo wp-config.php en la raíz de tu instalación de WordPress. Añade la siguiente línea justo antes del comentario que dice "That's all, stop editing! Happy publishing.":
define( 'WP_ALLOW_REPAIR', true );
Guarda los cambios y sube el archivo de nuevo al servidor si estás trabajando por FTP.
2. Ejecutar la reparación desde el navegador
Una vez habilitada la constante WP_ALLOW_REPAIR, accede en tu navegador a la siguiente URL, sustituyendo tusitio.com por tu dominio real:
https://tusitio.com/wp-admin/maint/repair.php
Verás una pantalla con dos opciones: "Repair Database" y "Repair and Optimize Database". La segunda opción tarda algo más, pero suele ser recomendable para mejorar el rendimiento general.
Haz clic en la opción deseada y espera a que el proceso finalice. WordPress intentará reparar las tablas dañadas y optimizar su estructura. Al terminar, se mostrará un informe con las acciones realizadas y los posibles errores encontrados.
3. Desactivar la herramienta de reparación
Por motivos de seguridad, es muy importante desactivar esta función una vez finalizada la reparación. Vuelve a editar wp-config.php y elimina la línea que añadiste o cámbiala a false:
// Eliminar o comentar esta línea cuando termines
// define( 'WP_ALLOW_REPAIR', true );
Dejar la herramienta activa permitiría que cualquiera con la URL pudiera ejecutar la reparación sin necesidad de iniciar sesión, lo que supone un riesgo de seguridad.
Reparar tablas MySQL desde phpMyAdmin
Si la herramienta interna de WordPress no resuelve el problema o no puedes acceder a ella, el siguiente paso es reparar las tablas directamente desde MySQL utilizando phpMyAdmin, la herramienta más común en la mayoría de hostings.
1. Accede a phpMyAdmin
Entra en el panel de control de tu proveedor de hosting y busca el icono o sección de phpMyAdmin. Una vez dentro, selecciona la base de datos asociada a tu instalación de WordPress. Si no estás seguro de cuál es, revisa el archivo wp-config.php y localiza el valor de DB_NAME.
2. Detecta tablas corruptas
En la lista de tablas, phpMyAdmin suele mostrar mensajes de estado cuando alguna tabla está dañada. Puedes encontrar indicaciones como "in use", "marked as crashed" o errores similares. También puedes ejecutar una comprobación general:
- Marca todas las tablas (casilla "Marcar todos").
- En el menú desplegable de la parte inferior, selecciona "Check table" o "Comprobar tabla".
- Revisa el resultado para identificar las tablas con errores.
3. Ejecuta la reparación de tablas
Una vez localizadas las tablas problemáticas, puedes intentar repararlas directamente desde phpMyAdmin:
- Marca las tablas dañadas o, si lo prefieres, todas las tablas de WordPress.
- En el menú desplegable de la parte inferior, elige "Repair table" o "Reparar tabla".
- Espera a que el proceso finalice y revisa los mensajes de resultado.
Si la reparación se completa con éxito, vuelve a probar tu sitio y el panel de administración. En muchos casos, este paso es suficiente para recuperar el funcionamiento normal.
4. Reparación avanzada por SQL
Si prefieres trabajar con consultas SQL o necesitas una reparación más granular, puedes usar comandos como REPAIR TABLE desde la pestaña SQL de phpMyAdmin:
REPAIR TABLE wp_posts;
REPAIR TABLE wp_options;
REPAIR TABLE wp_users;
Sustituye los nombres de las tablas por las que presenten errores. Si tu instalación utiliza un prefijo distinto a wp_, asegúrate de usar el prefijo correcto.
Usar plugins para reparar y optimizar la base de datos
Cuando el acceso al panel de administración sigue disponible, los plugins de mantenimiento y optimización pueden facilitar mucho la tarea de reparar y limpiar la base de datos de WordPress. No sustituyen a las copias de seguridad ni a las reparaciones a nivel de servidor, pero son un complemento muy útil.
1. Tipos de plugins recomendados
Algunos tipos de plugins que pueden ayudarte a mantener una base de datos sana son:
- Plugins de optimización de base de datos: eliminan revisiones antiguas, borradores automáticos, comentarios spam y transients caducados.
- Plugins de copias de seguridad: permiten crear y restaurar backups completos de la base de datos con un clic.
- Plugins de seguridad: bloquean intentos de acceso maliciosos y reducen el riesgo de inyecciones SQL.
2. Ejemplos de plugins útiles
Sin entrar en recomendaciones cerradas, algunos plugins populares que suelen incluir funciones de optimización de base de datos son:
- Plugins de limpieza y optimización de base de datos específicos.
- Suites de rendimiento que integran limpieza de base de datos, caché y minificación.
- Herramientas de backup que permiten restaurar la base de datos a un punto anterior estable.
Antes de instalar cualquier plugin, revisa siempre su reputación, número de instalaciones activas, compatibilidad con tu versión de WordPress y la fecha de la última actualización.
Buenas prácticas con plugins
No abuses del número de plugins instalados. Mantén solo los necesarios, desactiva y elimina los que no uses y evita tener varios plugins que hagan lo mismo, ya que pueden generar conflictos y aumentar el riesgo de errores en la base de datos.
Restaurar la base de datos desde una copia de seguridad
Cuando la corrupción es grave y las herramientas de reparación no consiguen devolver la estabilidad al sitio, la solución más segura suele ser restaurar la base de datos desde una copia de seguridad reciente. Este proceso implica reemplazar el estado actual (dañado) por un estado anterior conocido como funcional.
1. Evalúa qué copia de seguridad usar
Revisa las copias disponibles y elige la más reciente que sepas que funcionaba correctamente. Ten en cuenta:
- La fecha y hora de la copia.
- Si incluye solo la base de datos o también los archivos.
- Si desde esa fecha has publicado contenido importante que podrías perder.
2. Restaurar desde el panel del hosting
Muchos proveedores de hosting ofrecen un sistema de restauración automática de bases de datos. Normalmente, el proceso consiste en:
- Acceder al panel de control y localizar la sección de copias de seguridad o backups.
- Seleccionar la fecha de la copia que quieres restaurar.
- Elegir la base de datos asociada a tu WordPress.
- Confirmar la restauración y esperar a que el proceso termine.
3. Restaurar manualmente con phpMyAdmin
Si dispones de un archivo SQL de backup, puedes restaurarlo manualmente desde phpMyAdmin:
- Accede a phpMyAdmin y selecciona la base de datos de tu sitio.
- Opcionalmente, vacía las tablas actuales (tras asegurarte de tener una copia adicional).
- Ve a la pestaña Importar y selecciona el archivo SQL o SQL.gz de la copia.
- Haz clic en Continuar y espera a que se complete la importación.
Advertencia
Restaurar una copia de seguridad sobrescribirá el estado actual de la base de datos. Cualquier contenido creado después de la fecha de la copia se perderá, a menos que lo exportes y lo vuelvas a importar manualmente.
Buenas prácticas para evitar futuras corrupciones
Una vez que has conseguido reparar tu base de datos WordPress corrupta, el siguiente paso es implementar una serie de buenas prácticas para minimizar la probabilidad de que el problema se repita. La prevención es siempre más sencilla y económica que la reparación de emergencia.
1. Mantén WordPress y plugins actualizados
Las actualizaciones corrigen vulnerabilidades, mejoran la compatibilidad con nuevas versiones de PHP y MySQL y suelen incluir optimizaciones de rendimiento. Programa revisiones periódicas para:
- Actualizar el núcleo de WordPress a la última versión estable.
- Mantener plugins y temas al día.
- Eliminar plugins y temas que no utilices.
2. Implementa una estrategia de copias de seguridad
Diseña un plan de backups adaptado al tamaño y la importancia de tu sitio:
- Realiza copias automáticas diarias de la base de datos y semanales de los archivos.
- Guarda al menos una copia en una ubicación externa (cloud, almacenamiento remoto, etc.).
- Prueba periódicamente el proceso de restauración para asegurarte de que las copias funcionan.
3. Optimiza y limpia la base de datos regularmente
Una base de datos ligera y ordenada es menos propensa a errores. Algunas acciones recomendadas son:
- Eliminar revisiones antiguas de entradas y páginas.
- Borrar comentarios spam y en la papelera.
- Limpiar transients caducados y opciones temporales.
- Revisar y eliminar tablas huérfanas de plugins desinstalados.
4. Refuerza la seguridad del sitio
Muchos problemas de base de datos se originan en ataques o vulnerabilidades explotadas. Para reducir riesgos:
- Utiliza contraseñas fuertes para el panel de administración y la base de datos.
- Limita el número de intentos de inicio de sesión y activa la autenticación en dos pasos cuando sea posible.
- Instala un plugin de seguridad que monitorice accesos y cambios críticos.
- Mantén el servidor actualizado (PHP, MySQL/MariaDB, sistema operativo).
Resumen
Reparar una base de datos WordPress corrupta es posible y, en muchos casos, sencillo si sigues un proceso ordenado. Sin embargo, la verdadera clave está en la prevención: copias de seguridad, mantenimiento regular y seguridad reforzada.
Preguntas frecuentes
¿Puedo reparar una base de datos WordPress corrupta sin perder datos?
En muchos casos, sí. Las herramientas de reparación de WordPress y MySQL intentan corregir errores estructurales sin eliminar información. Sin embargo, si la corrupción es muy grave, es posible que algunos datos sean irrecuperables. Por eso es imprescindible contar siempre con una copia de seguridad reciente antes de iniciar cualquier reparación.
¿Qué hago si no tengo copia de seguridad?
Si no dispones de backups, intenta primero las opciones menos invasivas: reparación desde wp-config.php y reparación de tablas en phpMyAdmin. Si el problema persiste, contacta con el soporte de tu hosting; algunos proveedores mantienen copias internas aunque no estén visibles en tu panel. A partir de ahí, establece un plan de copias de seguridad para evitar que vuelva a ocurrir.
¿Es seguro dejar activada la opción WP_ALLOW_REPAIR?
No. La página de reparación de WordPress no requiere autenticación, por lo que cualquiera que conozca la URL podría ejecutarla. Úsala solo de forma temporal para reparar la base de datos y desactívala inmediatamente después eliminando la constante WP_ALLOW_REPAIR de tu archivo wp-config.php.
¿Un plugin puede corromper mi base de datos?
Sí, un plugin mal desarrollado o incompatible puede ejecutar consultas erróneas, modificar la estructura de las tablas o generar datos inconsistentes. Para reducir este riesgo, instala solo plugins de confianza, mantenlos actualizados y prueba siempre las nuevas instalaciones o actualizaciones en un entorno de pruebas antes de aplicarlas en producción.
¿Cada cuánto debo optimizar la base de datos de WordPress?
Depende del tamaño y la actividad de tu sitio. Para blogs pequeños, una optimización mensual suele ser suficiente. En sitios con mucho tráfico, comercio electrónico o contenido dinámico constante, es recomendable programar limpiezas semanales e incluso diarias de elementos como revisiones, transients y comentarios spam.
¿Necesitas orientación personalizada?
Te ayudamos a entender tus opciones y el siguiente paso.