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

Cómo reparar una base de datos corrupta en PrestaShop

Actualizado el 13 de mayo de 2026

¡Hola! Soy tu técnico de soporte amigable. 😊

Si estás aquí, es porque seguramente has visto un mensaje de error como "Error de base de datos" o "Tabla no existe" en tu tienda PrestaShop. No te preocupes, es un problema más común de lo que crees y, lo más importante, tiene solución. En esta guía te voy a explicar paso a paso cómo reparar una base de datos corrupta en PrestaShop usando herramientas como phpMyAdmin y comandos de MySQL. Vamos a hacerlo de forma sencilla y sin necesidad de ser un experto.


¿Qué es una base de datos corrupta en PrestaShop?

Piensa en tu base de datos como el cerebro de tu tienda online. Almacena productos, pedidos, clientes, configuraciones y todo lo necesario para que tu PrestaShop funcione. Cuando se corrompe, es como si ese cerebro tuviera un "bloqueo" o información desordenada. Esto puede ocurrir por varias razones:

  • Cortes de luz o apagones inesperados.
  • Fallos en el servidor o en la actualización de módulos.
  • Errores al importar o exportar datos.
  • Ataques maliciosos (como inyecciones SQL).
  • Problemas con el disco duro del hosting.

Los síntomas típicos son: páginas en blanco, mensajes de error de MySQL, productos que no se cargan, o la imposibilidad de acceder al panel de administración. Pero no entres en pánico, vamos a repararlo.


Preparación antes de reparar

Antes de tocar nada, haz una copia de seguridad. Es como ponerse el cinturón de seguridad antes de conducir. Si algo sale mal, podrás restaurar todo.

Cómo hacer una copia de seguridad de la base de datos

Puedes hacerlo desde tu panel de control de hosting (cPanel, Syspanel, etc.) o desde phpMyAdmin. Te explico el método más universal:

  1. Accede a phpMyAdmin: Normalmente desde tu panel de hosting (por ejemplo, en Syspanel, el acceso está en el puerto 2106, luego buscas "phpMyAdmin").
  2. Selecciona tu base de datos: En la columna izquierda verás el nombre de tu base de datos de PrestaShop (suele ser algo como tuweb_prestashop).
  3. Ve a la pestaña "Exportar".
  4. Elige "Rápido" y "SQL", luego haz clic en "Continuar". Se descargará un archivo .sql con toda tu información.

[TIP] Guarda ese archivo en tu computadora y también en la nube (Google Drive, Dropbox). Nunca está de más tener dos copias.

Si no puedes acceder a phpMyAdmin, también puedes usar comandos desde la terminal de tu servidor (si tienes acceso SSH):

mysqldump -u usuario -p nombre_base > backup_prestashop.sql

Te pedirá la contraseña y listo.


Diagnóstico: ¿Qué tablas están corruptas?

Antes de reparar, debemos saber qué tablas están dañadas. PrestaShop usa el motor de almacenamiento InnoDB o MyISAM (dependiendo de la versión). Vamos a revisarlas.

Opción 1: Desde phpMyAdmin (la más fácil)

  1. En phpMyAdmin, selecciona tu base de datos.
  2. En la parte inferior, verás un enlace que dice "Verificar tabla" o "Check table" (depende del idioma).
  3. Haz clic en "Marcar todas" (o selecciona las que quieras).
  4. En el menú desplegable de "Con seleccionados", elige "Verificar tabla".
  5. phpMyAdmin te mostrará un resultado. Si ves algo como "OK", está bien. Si ves "Error" o "Corrupt", necesitas reparar.

Opción 2: Usando comandos MySQL (más rápido si sabes)

Si tienes acceso a la línea de comandos de MySQL, puedes ejecutar:

CHECK TABLE nombre_de_tabla;

Para revisar todas las tablas de tu base de datos:

CHECK TABLE prestashop_category, prestashop_product, prestashop_customer; -- (pon las que quieras)

O simplemente:

CHECK TABLE *;

Pero cuidado: este comando no funciona en todas las versiones. Es mejor usar phpMyAdmin si no estás seguro.


Cómo reparar la base de datos corrupta

Una vez identificadas las tablas problemáticas, pasamos a la reparación. Hay varios métodos, desde los más simples hasta los más avanzados.

Método 1: Reparar desde phpMyAdmin (el más recomendado para principiantes)

  1. En phpMyAdmin, selecciona tu base de datos.
  2. Marca las tablas que aparecieron como corruptas (o todas si quieres asegurarte).
  3. En el menú desplegable "Con seleccionados", elige "Reparar tabla".
  4. phpMyAdmin ejecutará el comando REPAIR TABLE y te mostrará el resultado. Si ves "OK", ¡felicidades! Tu tabla está reparada.

[INFO] Este método funciona perfectamente con tablas MyISAM. Si tu tabla es InnoDB, a veces no es suficiente y necesitas el siguiente método.

Método 2: Reparar con comandos MySQL directos

Si prefieres la terminal o no tienes acceso a phpMyAdmin, puedes usar:

REPAIR TABLE nombre_de_tabla;

Por ejemplo:

REPAIR TABLE ps_product;

Si quieres reparar todas las tablas de una vez (solo para MyISAM):

REPAIR TABLE *;

Pero ojo: esto puede tardar si tienes muchas tablas.

Método 3: Reparar tablas InnoDB (más complejo)

InnoDB es más robusto pero a veces se corrompe de forma diferente. Si el comando REPAIR no funciona, prueba esto:

  1. Forzar la recuperación: Edita el archivo de configuración de MySQL (my.cnf o my.ini) y agrega al final:

    [mysqld]
    innodb_force_recovery = 1
    

    Luego reinicia MySQL:

    sudo systemctl restart mysql
    

    Esto permite que MySQL arranque aunque haya corrupción. Luego, desde phpMyAdmin o comandos, exporta la base de datos (como hicimos al principio) y luego la importas en una nueva base de datos limpia.

  2. Reparar con mysqlcheck: Desde la terminal:

    mysqlcheck -u usuario -p --auto-repair --databases nombre_base
    

    Esto intenta reparar automáticamente.

[WARNING] Usa innodb_force_recovery solo temporalmente. Una vez reparado, quítalo del archivo de configuración y reinicia MySQL de nuevo.

Método 4: Restaurar desde la copia de seguridad (plan B)

Si nada funciona, siempre puedes restaurar la copia de seguridad que hiciste al principio. Es el método más seguro.

  1. En phpMyAdmin, selecciona tu base de datos.
  2. Ve a "Importar".
  3. Selecciona el archivo .sql de la copia de seguridad.
  4. Haz clic en "Continuar". Espera a que termine (puede tardar unos minutos si la base es grande).

[TIP] Si tu base de datos es muy grande (más de 50 MB), puede que phpMyAdmin no pueda subirla. En ese caso, usa la línea de comandos:

mysql -u usuario -p nombre_base < backup_prestashop.sql

Prevención: Cómo evitar futuras corrupciones

Una vez reparado, es importante tomar medidas para que no vuelva a ocurrir. Aquí van algunos consejos:

  • Actualiza PrestaShop y sus módulos regularmente: Las versiones antiguas tienen bugs que pueden dañar la base de datos.
  • Usa un hosting de calidad: Los cortes de luz y discos duros defectuosos son causas comunes. Si tu hosting es barato, considera migrar a uno más fiable.
  • Haz copias de seguridad automáticas: Muchos paneles como Syspanel (accesible por puerto 2106) permiten programar backups semanales. Actívalos.
  • Evita modificar la base de datos directamente: Si necesitas hacer cambios, usa siempre el panel de administración de PrestaShop o módulos confiables.
  • Revisa los logs del servidor: Si ves errores frecuentes de MySQL, puede ser señal de que algo anda mal en el servidor.

Preguntas frecuentes (FAQ)

¿Qué hago si no puedo acceder a phpMyAdmin?

Si tu hosting no tiene phpMyAdmin, puedes usar herramientas como Adminer (muchos paneles lo incluyen) o acceder por SSH con comandos MySQL. Si no tienes SSH, contacta a tu proveedor de hosting.

¿Puedo perder datos al reparar?

En teoría, reparar una tabla no debería borrar datos, pero siempre existe un riesgo. Por eso es vital la copia de seguridad. Si la tabla está muy dañada, es posible que pierdas algunos registros, pero es mejor que tener la tienda caída.

¿Y si después de reparar sigo viendo errores?

Puede que la corrupción sea más profunda. Prueba a restaurar la copia de seguridad. Si el error persiste, el problema podría ser de los archivos de PrestaShop (no de la base de datos). Revisa los logs de errores de tu tienda.

¿Cuánto tiempo tarda la reparación?

Depende del tamaño de la base de datos. Para una tienda pequeña (menos de 1000 productos), suele ser cuestión de segundos. Para tiendas grandes, puede tomar varios minutos.


Conclusión

Reparar una base de datos corrupta en PrestaShop no es tan complicado como parece. Con herramientas como phpMyAdmin y un poco de paciencia, puedes tener tu tienda funcionando de nuevo en poco tiempo. Recuerda siempre:

  1. Haz una copia de seguridad antes de cualquier acción.
  2. Identifica las tablas corruptas con el comando CHECK TABLE.
  3. Repara con REPAIR TABLE o métodos alternativos.
  4. Prevención: actualiza, haz backups y usa un hosting fiable.

Si te quedas atascado, no dudes en contactar a tu proveedor de hosting o a un técnico especializado. ¡Tu tienda merece estar siempre online!

Espero que esta guía te haya sido útil. Si tienes más dudas, déjalas en los comentarios (si los hay) o busca ayuda en la comunidad de PrestaShop. ¡Buena suerte! 🚀

¿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