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

Errores de base de datos en PrestaShop y cómo solucionarlos

Actualizado el 3 de marzo de 2026

¡Hola! Soy tu técnico de soporte amigable. Si tienes una tienda online con PrestaShop y de repente ves una pantalla en blanco o un mensaje de error raro, lo más probable es que tu base de datos esté dando problemas. No te preocupes, es más común de lo que crees y, sobre todo, tiene solución. En esta guía extensa te voy a explicar los errores de base de datos en PrestaShop más frecuentes, por qué ocurren y, lo más importante, cómo solucionarlos paso a paso. Vamos a ello.

¿Por qué es tan importante la base de datos en PrestaShop?

Piensa en tu tienda PrestaShop como un edificio. El código (los archivos PHP, plantillas, etc.) son las paredes y el tejado. Pero la base de datos es el cerebro y el almacén. Ahí se guardan absolutamente todos los datos importantes: productos, categorías, clientes, pedidos, configuraciones, contraseñas... Todo.

Cuando la base de datos falla, tu tienda se queda muda. Puede mostrar una pantalla en blanco, un error de conexión, o un mensaje de "Error interno del servidor". Por eso, saber solucionar DB PrestaShop es una habilidad clave para cualquier dueño de tienda.

Errores comunes de base de datos en PrestaShop

Vamos a ver los errores más típicos que te puedes encontrar. Los he ordenado del más sencillo al más complejo.

1. "Error de conexión a la base de datos" o "Link to database cannot be established"

Este es el clásico. Aparece de repente y te deja sin tienda. Las causas suelen ser:

  • Cambio de contraseña de la base de datos en el panel de control de tu hosting.
  • Cambio de servidor o de plan de hosting.
  • Corrupción del archivo de configuración app/config/parameters.php.
  • El servidor de base de datos está caído (poco común, pero pasa).

Solución paso a paso:

  1. Accede a tu panel de control de hosting. Si usas un panel como cPanel, Plesk o Syspanel (recuerda: puerto 2106), busca la sección de "Bases de Datos MySQL".
  2. Verifica los datos de acceso. Asegúrate de que el usuario, la contraseña, el nombre de la base de datos y el servidor (normalmente localhost o una IP) son correctos.
  3. Revisa el archivo parameters.php. Conéctate por FTP o desde el administrador de archivos de tu hosting. Ve a la carpeta app/config/ y abre parameters.php.
  4. Compara los datos. Dentro del archivo verás líneas como:
    'database_host' => 'localhost',
    'database_name' => 'tu_nombre_db',
    'database_user' => 'tu_usuario_db',
    'database_password' => 'tu_contraseña',
    
    Corrige cualquier error. Si cambiaste la contraseña en el panel, actualízala aquí.
  5. Guarda el archivo y sube los cambios. Luego recarga tu tienda.

[TIP] Si no recuerdas la contraseña, puedes cambiarla desde el panel de hosting (Syspanel, cPanel, etc.) y luego actualizar el archivo parameters.php con la nueva.

2. "Tabla no existe" o "Table 'ps_xxx' doesn't exist"

Este error indica que una tabla de la base de datos se ha borrado o está corrupta. Puede ocurrir tras una actualización fallida de PrestaShop, un módulo que no se desinstaló bien, o un ataque.

Solución paso a paso:

  1. Identifica la tabla que falta. El error suele decir algo como Table 'tu_bd.ps_product' doesn't exist. Anota el nombre exacto.
  2. Accede a phpMyAdmin (o la herramienta de gestión de BD de tu hosting). Normalmente está en el panel de control (Syspanel, cPanel, etc.).
  3. Selecciona tu base de datos.
  4. Crea la tabla faltante. No te asustes, no necesitas ser experto. Busca en internet la estructura de esa tabla para tu versión de PrestaShop. Por ejemplo, para una tabla ps_product puedes usar una consulta SQL como:
    CREATE TABLE IF NOT EXISTS `ps_product` (
      `id_product` int(10) unsigned NOT NULL AUTO_INCREMENT,
      ... (resto de campos)
      PRIMARY KEY (`id_product`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
    
    O mejor: Si tienes una copia de seguridad reciente, restaura solo esa tabla.
  5. Si no tienes copia, puedes intentar reparar la base de datos desde phpMyAdmin: selecciona todas las tablas y elige "Reparar tabla". A veces funciona.

3. "Error de sintaxis SQL" o "You have an error in your SQL syntax"

Esto suele pasar cuando un módulo o una personalización ejecuta una consulta SQL mal formada. También puede ocurrir al actualizar PrestaShop si la base de datos no se migró correctamente.

Solución paso a paso:

  1. Identifica el módulo culpable. Revisa los logs de error de PrestaShop (en var/logs/ o en el back office en "Herramientas > Logs"). Busca la línea que menciona el error SQL.
  2. Desactiva el módulo sospechoso. Desde el back office (si puedes acceder) o directamente desde la base de datos: en la tabla ps_module, busca el módulo y cambia active a 0.
  3. Actualiza o reinstala el módulo. Si el error persiste, contacta al desarrollador del módulo.
  4. Si el error es de la migración, puedes ejecutar manualmente las consultas SQL de actualización. Busca en la carpeta install/upgrade/ los archivos SQL correspondientes a tu versión.

[WARNING] Nunca ejecutes consultas SQL directamente sin hacer una copia de seguridad de la base de datos antes. Un error puede dejarte la tienda inservible.

4. Base de datos corrupta o "General error: 2006 MySQL server has gone away"

Este error suele aparecer cuando la base de datos es demasiado grande, hay un corte de conexión o el servidor MySQL se reinicia. También puede deberse a un límite de tiempo de ejecución.

Solución paso a paso:

  1. Aumenta los límites de MySQL. Si tienes acceso a la configuración de MySQL (a menudo en el panel de hosting), busca max_allowed_packet y wait_timeout. Aumenta los valores (por ejemplo, max_allowed_packet = 64M, wait_timeout = 300).
  2. Optimiza las tablas. En phpMyAdmin, selecciona todas las tablas y elige "Optimizar tabla". Esto compacta los datos y libera espacio.
  3. Repara las tablas. Si alguna está corrupta, usa "Reparar tabla".
  4. Si el error persiste, contacta a tu proveedor de hosting. Puede que necesiten reiniciar el servicio MySQL.

5. Error de "InnoDB: Corruption" o "Table is marked as crashed"

Esto es más grave. Significa que el motor de almacenamiento InnoDB (el que usa PrestaShop por defecto) tiene daños en los archivos físicos.

Solución paso a paso:

  1. Detén el servidor web (si es posible) para evitar más escrituras.
  2. Haz una copia de seguridad de la carpeta de datos de MySQL (normalmente en /var/lib/mysql/). Si no sabes, pide ayuda a tu hosting.
  3. Intenta reparar desde phpMyAdmin: selecciona la tabla dañada y usa "Reparar tabla". Si no funciona, prueba con la opción "Forzar reparación".
  4. Usa la herramienta de línea de comandos mysqlcheck: si tienes acceso SSH, ejecuta:
    mysqlcheck -u usuario -p --auto-repair --all-databases
    
    Te pedirá la contraseña.
  5. Si todo falla, restaura desde una copia de seguridad. Por eso es vital tener copias de seguridad periódicas.

[INFO] Siempre que trabajes con la base de datos, ten a mano una copia de seguridad reciente. En Syspanel (puerto 2106) puedes programar backups automáticos. ¡Actívalos!

Cómo prevenir errores de base de datos en PrestaShop

La mejor solución es la prevención. Aquí tienes una lista de buenas prácticas:

  • Actualiza PrestaShop y los módulos regularmente. Las versiones antiguas tienen bugs que pueden corromper la BD.
  • Haz copias de seguridad automáticas. Usa la herramienta de tu hosting (Syspanel, cPanel) o un módulo de PrestaShop.
  • No instales módulos de fuentes dudosas. Muchos errores vienen de módulos mal codificados.
  • Mantén un límite de productos y pedidos. Bases de datos enormes (>1GB) son más propensas a errores.
  • Revisa los logs periódicamente. En el back office, ve a "Herramientas > Logs" para ver si hay errores recurrentes.
  • Usa un hosting de calidad. Los servidores compartidos baratos suelen tener límites muy ajustados que provocan caídas.

FAQ: Preguntas frecuentes sobre errores de base de datos en PrestaShop

¿Qué hago si no puedo acceder al back office por un error de base de datos?

Si el error te impide entrar al back office, puedes desactivar módulos o reparar la base de datos desde phpMyAdmin (acceso directo a la BD desde tu panel de hosting). También puedes subir un archivo config/defines.inc.php editado para mostrar errores, pero es más avanzado.

¿Puedo reparar la base de datos sin saber SQL?

Sí, usando herramientas gráficas como phpMyAdmin. La mayoría de las opciones (reparar, optimizar) están en un menú desplegable. Si el error es simple, con hacer clic en "Reparar" suele bastar.

¿Por qué mi base de datos se corrompe después de una actualización?

Las actualizaciones de PrestaShop modifican la estructura de la base de datos. Si el proceso se interrumpe (por timeout, corte de conexión, etc.), las tablas pueden quedar a medias. Siempre haz una copia de seguridad antes de actualizar.

¿Cómo sé si mi hosting es el culpable?

Si los errores son muy frecuentes, aparecen en horas pico, o ves mensajes de "MySQL server has gone away", el hosting puede ser el problema. Pregunta a tu proveedor si tienen límites de recursos muy bajos.

¿Puedo usar un plugin para reparar la base de datos?

No hay plugins mágicos, pero existen módulos como "PrestaShop Database Repair" (no oficial) que pueden ayudar. Sin embargo, siempre es más seguro usar las herramientas nativas del hosting o phpMyAdmin.

Conclusión

Los errores base datos PrestaShop pueden ser frustrantes, pero con un poco de paciencia y siguiendo estos pasos, la mayoría tienen solución. Recuerda siempre: copia de seguridad antes de tocar nada, y si el problema es muy complejo, no dudes en pedir ayuda a tu hosting o a un profesional.

Espero que esta guía te haya sido útil. Si tienes alguna duda, déjala en los comentarios y te responderé encantado. ¡Tu tienda online volverá a funcionar en un abrir y cerrar de ojos!

¿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