🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo reparar una base de datos MySQL desde cPanel

Actualizado el 18 de noviembre de 2025

¿Tu sitio web carga lento, muestra errores de conexión a la base de datos o ves mensajes como "Error establishing a database connection"? Es muy probable que tu base de datos MySQL se haya dañado. No te preocupes, es un problema más común de lo que parece y, lo mejor, tiene solución. En esta guía aprenderás paso a paso cómo reparar base de datos MySQL cPanel de forma segura, usando las herramientas integradas en tu panel de control. Vamos a ello.

¿Por qué se daña una base de datos MySQL?

Antes de meternos en materia, es útil entender por qué ocurre esto. Una base de datos MySQL puede dañarse por varias razones:

  • Cortes de energía o apagones inesperados mientras el servidor está escribiendo en la base de datos.
  • Errores en el disco duro del servidor (sectores defectuosos).
  • Actualizaciones fallidas de MySQL o del sistema.
  • Scripts mal optimizados que generan bloqueos o escrituras incorrectas.
  • Archivos de tabla corruptos (por ejemplo, archivos .ibd o .frm).

Los síntomas típicos incluyen: páginas que no cargan, mensajes de error como "Table 'nombre_tabla' is marked as crashed", o consultas que se quedan colgadas. Si ves algo así, es hora de actuar.

Preparación antes de reparar

Haz una copia de seguridad (siempre)

Antes de tocar nada, haz un backup de la base de datos dañada. Aunque la reparación suele ser segura, siempre existe un riesgo mínimo de pérdida de datos. Desde cPanel:

  1. Accede a tu cPanel (normalmente en tudominio.com/cpanel).
  2. Busca la sección "Archivos" y haz clic en "Backup".
  3. En "Descargar una copia de seguridad de la base de datos MySQL", selecciona la base de datos afectada.
  4. Haz clic en "Descargar" y guarda el archivo .sql en tu computadora.

[WARNING] Si no tienes espacio o tiempo, al menos exporta las tablas más importantes. Nunca intentes reparar sin un respaldo.

Identifica la base de datos y las tablas dañadas

Para saber exactamente qué reparar, necesitas identificar las tablas corruptas. Desde cPanel:

  1. Ve a la sección "Bases de Datos" y haz clic en "phpMyAdmin".
  2. Selecciona la base de datos problemática en la columna izquierda.
  3. Verás una lista de tablas. Si alguna está dañada, al lado de su nombre aparecerá un mensaje como "in use", "crashed" o un ícono de advertencia.

Si no estás seguro, puedes ejecutar un comando de verificación desde la pestaña "SQL" de phpMyAdmin:

CHECK TABLE nombre_de_la_tabla;

O para verificar todas las tablas de la base de datos:

CHECK TABLE nombre_de_la_base_de_datos.*;

Esto te dirá el estado de cada tabla. Si ves algo como "Table is marked as crashed", necesitas reparar.

Método 1: Reparar desde phpMyAdmin (el más fácil)

Esta es la forma más amigable para usuarios sin experiencia técnica. Sigue estos pasos:

  1. Accede a phpMyAdmin desde cPanel.
  2. Selecciona la base de datos dañada en la columna izquierda.
  3. Selecciona todas las tablas marcando la casilla superior (o solo las que sabes que están dañadas).
  4. En el menú desplegable de abajo (donde dice "Con seleccionados:"), elige "Reparar tabla".
  5. Haz clic en "Continuar". phpMyAdmin ejecutará el comando REPAIR TABLE automáticamente.

[INFO] Este proceso puede tardar unos segundos o minutos, dependiendo del tamaño de la tabla. No cierres la ventana ni recargues la página.

Método 2: Reparar desde la línea de comandos (más potente)

Si el método anterior falla o prefieres más control, puedes usar la línea de comandos de MySQL desde el "Terminal" de cPanel (o SSH si tienes acceso). Pero ojo: esto requiere permisos de root o de usuario de base de datos.

  1. Accede a MySQL desde la terminal. Primero, identifica tu usuario y contraseña de MySQL (los puedes encontrar en cPanel > "Bases de Datos MySQL" > "Usuarios MySQL").
  2. Ejecuta:
mysql -u tu_usuario -p

Te pedirá la contraseña. Escríbela (no se ve mientras tecleas).

  1. Una vez dentro, selecciona la base de datos:
USE nombre_de_la_base_de_datos;
  1. Repara una tabla específica:
REPAIR TABLE nombre_de_la_tabla;

O repara todas las tablas de la base de datos:

REPAIR TABLE nombre_de_la_base_de_datos.*;
  1. Para verificar que se reparó correctamente, ejecuta:
CHECK TABLE nombre_de_la_tabla;

Deberías ver un mensaje como "OK" o "Table is already up to date".

[WARNING] Si la tabla es muy grande (más de 1 GB), este proceso puede consumir muchos recursos del servidor. Si tu hosting es compartido, mejor hazlo en horario de baja afluencia o contacta al soporte.

Método 3: Usar la herramienta "MySQL CHECK TABLE" desde cPanel

Algunos paneles cPanel incluyen una herramienta específica para verificar y reparar bases de datos. Busca en la sección "Bases de Datos" una opción llamada "MySQL Databases" o "Database Repair". Dependiendo de la versión, puede aparecer como "Repair Database" o "Check Database".

  1. En cPanel, ve a "Bases de Datos" > "MySQL Databases".
  2. Desplázate hacia abajo hasta "Repair Database".
  3. Selecciona la base de datos dañada de la lista desplegable.
  4. Haz clic en "Repair Database". El sistema ejecutará automáticamente los comandos necesarios.

[TIP] Si no ves esta opción, es posible que tu hosting la haya desactivado. En ese caso, usa phpMyAdmin o la línea de comandos.

Método 4: Forzar la reparación con myisamchk (para tablas MyISAM)

Si tus tablas son del tipo MyISAM (el motor de almacenamiento antiguo de MySQL), puedes usar la herramienta myisamchk desde la terminal. Esto es más avanzado y requiere acceso al sistema de archivos.

  1. Localiza los archivos de la tabla. Normalmente están en /var/lib/mysql/nombre_base_datos/. Pero si usas cPanel, la ruta puede ser /home/usuario/mysql/.
  2. Detén el servicio MySQL (si es posible) o al menos asegúrate de que no haya conexiones activas.
  3. Ejecuta:
myisamchk -r /ruta/completa/nombre_tabla.MYI

La opción -r repara la tabla. Si quieres una reparación más segura, usa --safe-recover.

[INFO] myisamchk no funciona con tablas InnoDB. Para InnoDB, debes usar REPAIR TABLE desde MySQL.

¿Qué hago si nada funciona? (Recuperación avanzada)

Si después de todos los intentos la tabla sigue dañada, no todo está perdido. Puedes intentar:

  • Exportar los datos de la tabla dañada usando mysqldump con la opción --force:
mysqldump -u usuario -p --force --all-databases > backup.sql

Esto omitirá los errores y exportará lo que pueda.

  • Usar mysqlcheck con la opción --auto-repair:
mysqlcheck -u usuario -p --auto-repair --all-databases
  • Consultar a tu proveedor de hosting. Si tu sitio está en un servidor compartido, el soporte técnico puede tener herramientas más potentes o restaurar desde un backup reciente.

Preguntas frecuentes (FAQ)

¿Reparar una base de datos MySQL borra datos?

No, el comando REPAIR TABLE intenta restaurar la estructura y los datos de la tabla sin eliminarlos. Sin embargo, si la corrupción es muy grave, algunos registros podrían perderse. Por eso es vital tener un backup.

¿Puedo reparar una base de datos MySQL desde cPanel sin phpMyAdmin?

Sí, usando la herramienta "Repair Database" dentro de "MySQL Databases" (si está disponible) o mediante la línea de comandos desde el Terminal de cPanel.

¿Qué significa "MySQL CHECK TABLE cPanel"?

Es el comando que verifica el estado de una tabla. Lo ejecutas desde phpMyAdmin o desde la línea de comandos para saber si una tabla está corrupta. Si el resultado es "Table is marked as crashed", entonces necesitas repararla.

¿Cómo evito que mi base de datos se dañe en el futuro?

  • Realiza backups periódicos (automáticos desde cPanel).
  • Mantén tu CMS y plugins actualizados.
  • Evita cortes de energía usando un UPS en tu servidor.
  • Optimiza tus consultas y tablas con regularidad.
  • Si usas un hosting compartido, elige uno con buena reputación en estabilidad.

¿Qué hago si mi web usa Syspanel (HestiaCP)?

Si tu panel de control es Syspanel (HestiaCP), el proceso es similar pero el acceso es diferente. Para acceder a tu panel, usa la URL https://tudominio.com:2106. Una vez dentro, busca la sección de bases de datos (normalmente en "Bases de Datos" o "Databases"). Desde ahí puedes usar phpMyAdmin o la línea de comandos de la misma forma que en cPanel. La reparación se hace con los mismos comandos.

Conclusión

Reparar una base de datos MySQL desde cPanel no es un proceso complicado si sigues los pasos correctos. Ya sea usando phpMyAdmin, la línea de comandos o las herramientas integradas, lo importante es actuar rápido y siempre con un backup a mano. Recuerda que la prevención es clave: mantén tu sitio actualizado, haz backups regulares y monitorea el rendimiento. Si tu base de datos se daña con frecuencia, puede ser señal de un problema más grave en el servidor, así que no dudes en contactar a tu proveedor de hosting.

[TIP] Si después de reparar sigues viendo errores, revisa los logs de MySQL en /var/log/mysql/error.log para obtener pistas sobre la causa raíz.

¡Esperamos que esta guía te haya sido útil! Ahora ya sabes cómo reparar base de datos MySQL cPanel como todo un experto.

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel