¿Cómo reparar una base de datos MySQL corrupta en Plesk?
¿Tu sitio web dejó de funcionar de repente? ¿Ves un mensaje de error de "Error al conectar con la base de datos" o "Tabla inexistente"? Es muy probable que tu base de datos MySQL se haya corrompido. No entres en pánico: es un problema más común de lo que crees y, en la mayoría de los casos, tiene solución. En este artículo te guiaremos paso a paso para reparar base datos Plesk cuando está mysql corrupta plesk, y te daremos las claves para recuperar base datos Plesk sin perder información.
¿Por qué se corrompe una base de datos MySQL?
Antes de lanzarnos a la reparación, es útil entender por qué ocurre esto. Las causas más frecuentes son:
- Cortes de energía inesperados: Si el servidor se apaga de golpe mientras MySQL está escribiendo datos, los archivos pueden quedar en un estado inconsistente.
- Errores del disco duro: Sectores defectuosos o problemas en el almacenamiento pueden dañar los archivos físicos de la base de datos.
- Errores humanos: Por ejemplo, detener MySQL manualmente o forzar un reinicio del servidor mientras hay consultas activas.
- Sobrecarga del servidor: Demasiadas conexiones simultáneas o consultas muy pesadas pueden provocar bloqueos y corrupción.
- Versiones incompatibles: Actualizar MySQL o MariaDB sin seguir los procedimientos correctos puede generar conflictos.
[INFO] Una base de datos corrupta no significa que hayas perdido tus datos para siempre. MySQL incluye herramientas de reparación integradas que suelen resolver el problema.
Señales de que tu base de datos está corrupta
Estos son los síntomas más comunes que te indicarán que necesitas reparar base datos Plesk:
- Tu sitio web muestra errores como: "Error establishing a database connection", "Table 'x' is marked as crashed and should be repaired" o "Can't open file: 'xxx.MYI'".
- Al acceder a phpMyAdmin desde Plesk, ves tablas con el estado "in use" o "crashed".
- Los paneles de administración (como WordPress o Joomla) no cargan o muestran páginas en blanco.
- Recibes correos del sistema con errores de MySQL en los logs.
Método 1: Reparar desde Plesk (la forma más fácil)
Plesk ofrece una herramienta gráfica muy simple para reparar bases de datos. Es el primer método que debes probar.
Paso 1: Accede a la base de datos en Plesk
- Inicia sesión en tu panel de Plesk (normalmente
https://tudominio.com:8443o la IP de tu servidor). - Ve a "Bases de datos" en el menú de la izquierda.
- Localiza la base de datos que quieres reparar. Normalmente tiene el nombre de tu sitio web o aplicación.
- Haz clic en el nombre de la base de datos para abrir sus detalles.
Paso 2: Usa la herramienta de reparación
- Dentro de los detalles de la base de datos, busca el botón "Reparar base de datos" o "Check & Repair". En versiones recientes de Plesk, puede estar en la pestaña "Herramientas".
- Haz clic en ese botón. Plesk ejecutará automáticamente el comando
mysqlcheckcon las opciones de reparación. - Espera unos segundos. Verás un mensaje de éxito o una lista de tablas reparadas.
- Vuelve a probar tu sitio web. Si funcionó, ¡problema resuelto!
[TIP] Este método repara tablas con el motor MyISAM. Si tu base de datos usa InnoDB (el más común hoy en día), Plesk también puede manejarlo, pero a veces necesitarás el método 2.
Método 2: Reparar desde la línea de comandos (SSH)
Si el método gráfico no funciona o prefieres más control, puedes usar la terminal. Necesitarás acceso SSH a tu servidor.
Paso 1: Conéctate por SSH
- Si usas Linux, abre una terminal y escribe:
ssh usuario@tudominio.com(reemplaza con tus datos). - Si usas Windows, puedes usar programas como PuTTY.
- Si tu hosting es compartido, pide a tu proveedor que ejecute estos comandos por ti.
Paso 2: Identifica el nombre de la base de datos y usuario
- Desde Plesk, ve a "Bases de datos" y anota el nombre exacto de la base de datos (ej:
miusuario_mibasededatos). - También anota el usuario de la base de datos (normalmente el mismo nombre con un guion bajo).
Paso 3: Ejecuta la reparación con mysqlcheck
Escribe el siguiente comando (reemplaza tu_usuario, tu_contraseña y tu_base_datos por los tuyos):
mysqlcheck -u tu_usuario -p tu_base_datos --auto-repair
Te pedirá la contraseña. Escríbela y presiona Enter.
Este comando revisa todas las tablas y repara las que encuentra corruptas. Si quieres ver más detalles, añade --verbose al final.
Paso 4: Reparar tablas específicas
Si solo una tabla está dañada, puedes repararla individualmente. Primero, entra a MySQL:
mysql -u tu_usuario -p
Luego, selecciona la base de datos:
USE tu_base_datos;
Y repara la tabla (ejemplo: wp_posts):
REPAIR TABLE wp_posts;
[WARNING] Si el comando
REPAIR TABLEfalla, puede que la tabla esté muy dañada. Entonces necesitarás restaurar desde un backup (ver método 4).
Método 3: Reparar tablas InnoDB (más avanzado)
Las tablas InnoDB son más robustas pero también más complejas de reparar. Si el método 2 no funcionó, prueba esto:
Paso 1: Verifica el estado de InnoDB
Ejecuta en MySQL:
SHOW ENGINE INNODB STATUS;
Busca mensajes como "corrupted" o "crash recovery".
Paso 2: Fuerza la recuperación
Edita el archivo de configuración de MySQL (/etc/mysql/my.cnf o /etc/my.cnf). Añade esta línea en la sección [mysqld]:
innodb_force_recovery = 1
Guarda el archivo y reinicia MySQL:
systemctl restart mysql
Si aún no funciona, prueba con valores de 2 a 6 (cada número es más agresivo). OJO: Esto solo es para recuperar datos, no para uso normal. Una vez recuperados, vuelve a poner innodb_force_recovery = 0 y reinicia.
Paso 3: Exporta e importa la base de datos
Con la recuperación forzada activa, haz un volcado de la base de datos:
mysqldump -u tu_usuario -p tu_base_datos > respaldo.sql
Luego, desactiva la recuperación forzada (vuelve a poner innodb_force_recovery = 0), reinicia MySQL, crea una base de datos nueva y restaura el volcado:
mysql -u tu_usuario -p nueva_base_datos < respaldo.sql
Método 4: Restaurar desde un backup (plan B)
Si todos los métodos anteriores fallan, siempre puedes recuperar base datos Plesk desde una copia de seguridad. Esto es por lo que siempre insistimos en tener backups periódicos.
Paso 1: Localiza tu backup
- En Plesk, ve a "Herramientas y configuraciones" > "Administrador de copias de seguridad".
- Busca el backup más reciente de tu base de datos. Normalmente Plesk crea backups automáticos si lo configuraste.
- Si no tienes backups en Plesk, revisa si tu proveedor de hosting los ofrece.
Paso 2: Restaura la base de datos
- En "Bases de datos", selecciona la base de datos corrupta.
- Haz clic en "Restaurar desde backup".
- Elige el archivo de backup y confirma.
- Espera a que termine el proceso.
[INFO] Si tu backup es de todo el sitio (archivos + base de datos), restaura solo la base de datos para no sobrescribir cambios recientes en los archivos.
Consejos para evitar futuras corrupciones
Prevenir es mejor que reparar. Sigue estas buenas prácticas:
- Activa los backups automáticos en Plesk: Ve a "Herramientas y configuraciones" > "Programación de copias de seguridad". Configura backups diarios de tus bases de datos.
- Usa un sistema de archivos robusto: Si tienes control sobre el servidor, usa ext4 o XFS que manejan mejor los cortes de energía.
- Monitorea el estado del disco: Revisa periódicamente los logs del sistema (
dmesgojournalctl) para detectar errores de disco. - No apagues el servidor a la fuerza: Siempre usa comandos como
shutdown -h nowosystemctl poweroff. - Actualiza MySQL/MariaDB con cuidado: Lee las notas de la versión y haz un backup antes de actualizar.
Preguntas frecuentes (FAQ)
¿Puedo reparar una base de datos MySQL sin perder datos?
Sí, en la mayoría de los casos. Los comandos REPAIR TABLE y mysqlcheck intentan preservar los datos. Solo en casos extremos (como archivos físicos dañados) podrías perder alguna información.
¿Qué hago si el error persiste después de reparar?
Prueba a reiniciar MySQL: systemctl restart mysql. Si el error sigue, es posible que el problema sea de hardware (disco duro) o que necesites restaurar desde un backup.
¿Cómo sé si mi base de datos usa MyISAM o InnoDB?
En phpMyAdmin, ve a la base de datos y mira la columna "Tipo" de cada tabla. También puedes ejecutar: SHOW TABLE STATUS; en MySQL.
¿Es seguro usar innodb_force_recovery?
Solo como último recurso y temporalmente. Valores altos (4-6) pueden impedir escrituras y dañar datos si se deja activado permanentemente.
¿Mi proveedor de hosting puede ayudarme?
Sí, la mayoría de los proveedores de hosting tienen soporte técnico que puede ejecutar estas reparaciones por ti. Siempre pregunta primero.
Conclusión
Reparar base datos Plesk cuando está mysql corrupta plesk no es tan complicado como parece. Empieza siempre por el método más sencillo (desde el panel de Plesk) y ve subiendo en complejidad si es necesario. Recuerda que la clave está en la prevención: mantén backups actualizados y monitorea la salud de tu servidor. Si sigues estos pasos, podrás recuperar base datos Plesk y volver a tener tu sitio web funcionando en pocos minutos.
¿Aún tienes dudas? Déjalas en los comentarios o contacta con nuestro equipo de soporte. ¡Estamos aquí para ayudarte!
