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

Solución a errores comunes de base de datos en PrestaShop con DirectAdmin

Actualizado el 20 de febrero de 2026

¿Tu tienda PrestaShop ha dejado de funcionar de repente? ¿Ves un mensaje de error de base de datos o una pantalla en blanco? No te preocupes, es uno de los problemas más comunes, pero también de los que tienen solución. Si tu tienda está alojada en un panel de control DirectAdmin, aquí te explicamos paso a paso cómo identificar y solucionar los errores de base de datos más frecuentes en PrestaShop.

Vamos a desglosar todo lo que necesitas saber sobre el error base de datos PrestaShop DirectAdmin, desde las causas más típicas hasta cómo reparar tablas PrestaShop y optimizar tu MySQL PrestaShop DirectAdmin.


¿Por qué ocurren los errores de base de datos en PrestaShop?

La base de datos es el cerebro de tu tienda. Guarda productos, pedidos, clientes, configuraciones y mucho más. Cuando algo falla ahí, PrestaShop no puede funcionar. Las causas más habituales son:

  • Tablas corruptas: Ocurre tras una caída del servidor, un corte de luz o una importación/exportación masiva de datos que se interrumpe.
  • Límites de conexión agotados: Demasiadas conexiones simultáneas a la base de datos saturan el servidor.
  • Espacio en disco insuficiente: Si el disco duro del servidor está lleno, MySQL no puede escribir nuevos datos.
  • Versiones incompatibles: Usar una versión de PHP o MySQL que no es compatible con tu PrestaShop.
  • Errores en módulos o temas: Un módulo mal codificado puede generar consultas SQL defectuosas.

Primeros auxilios: ¿Qué hacer ante un error de base de datos?

Antes de ponerte técnico, prueba estos pasos rápidos. Suelen resolver el 80% de los casos.

1. Activa el modo debug de PrestaShop

A veces el error muestra una pantalla en blanco. Activar el modo debug te dará pistas clave.

  1. Accede a tu panel de control DirectAdmin.
  2. Ve a Administrador de Archivos y navega hasta la carpeta raíz de tu tienda (normalmente public_html o tu-dominio.com).
  3. Busca el archivo config/defines.inc.php.
  4. Ábrelo con el editor de texto.
  5. Localiza esta línea:
    define('_PS_MODE_DEV_', false);
    
    Cámbiala a:
    define('_PS_MODE_DEV_', true);
    
    Guarda los cambios. Ahora la tienda mostrará el error real en lugar de una pantalla en blanco. Recuerda volver a ponerlo en false cuando termines de solucionar el problema.

[TIP] Anota el mensaje de error exacto que aparece. Te servirá para buscar soluciones más específicas.

2. Verifica el espacio en disco

Un disco lleno impide que MySQL funcione. En DirectAdmin, mira en la esquina superior derecha: verás una barra de uso de disco. Si está al 100%, tendrás que liberar espacio (borrar logs, backups antiguos, etc.).

3. Comprueba que los datos de conexión son correctos

A veces, al cambiar de servidor o restaurar una copia de seguridad, los datos de acceso a la base de datos se desactualizan.

  1. En DirectAdmin, ve a MySQL Management o Base de Datos MySQL.
  2. Verás el nombre de tu base de datos, el usuario y la contraseña.
  3. Ahora, en el Administrador de Archivos, abre el archivo app/config/parameters.php (o config/settings.inc.php si es una versión muy antigua de PrestaShop).
  4. Compara los valores de database_host, database_name, database_user y database_password con los que ves en DirectAdmin. Deben coincidir exactamente.

[WARNING] Si cambias la contraseña de la base de datos desde DirectAdmin, también debes actualizarla en el archivo parameters.php. De lo contrario, PrestaShop no podrá conectarse.


Solución avanzada: Reparar tablas PrestaShop desde phpMyAdmin

Si los pasos anteriores no funcionan, es probable que tengas tablas corruptas. La herramienta más potente para reparar tablas PrestaShop es phpMyAdmin, que viene integrado en DirectAdmin.

Paso 1: Accede a phpMyAdmin

  1. En DirectAdmin, busca el icono de phpMyAdmin (suele estar en la sección de "Características Avanzadas" o "Base de Datos").
  2. Haz clic y se abrirá una nueva ventana. Si te pide usuario y contraseña, usa los mismos datos de tu base de datos de PrestaShop.

Paso 2: Selecciona tu base de datos

En el panel izquierdo de phpMyAdmin, verás una lista de bases de datos. Haz clic en la que corresponde a tu PrestaShop (tiene el mismo nombre que viste en DirectAdmin).

Paso 3: Repara todas las tablas

  1. Una vez dentro de tu base de datos, verás una lista de tablas (con nombres como ps_product, ps_customer, etc.).
  2. Haz clic en el checkbox de la parte superior para seleccionar todas las tablas.
  3. En el menú desplegable "Con seleccionados:", elige la opción Reparar tabla.
  4. phpMyAdmin ejecutará el comando REPAIR TABLE en todas ellas. Verás un mensaje como "OK" o "La tabla ya está actualizada".

[INFO] Este proceso es seguro y no borra datos. Simplemente intenta corregir inconsistencias internas de las tablas.

Paso 4: Optimiza las tablas (opcional pero recomendado)

Después de reparar, repite el proceso pero esta vez elige Optimizar tabla. Esto reorganiza el espacio físico y mejora el rendimiento.


Solución para errores de conexión: Aumentar límites de MySQL

A veces el error dice algo como "Too many connections" o "User already has more than 'max_user_connections' active connections". Esto se soluciona ajustando los límites en DirectAdmin.

Cómo aumentar los límites

  1. En DirectAdmin, ve a MySQL Management.
  2. Busca la sección Limits o Límites de Base de Datos.
  3. Aquí puedes modificar:
    • Max Connections: El número máximo de conexiones simultáneas. Un valor seguro para una tienda pequeña/mediana es 150 o 200.
    • Max User Connections: El máximo por usuario. Ponlo al mismo valor que el anterior.
  4. Guarda los cambios.

[WARNING] Aumentar demasiado los límites puede saturar el servidor si no tiene suficiente memoria RAM. Si tu tienda recibe mucho tráfico, considera contratar un plan de hosting más potente.


Error común: "MySQL server has gone away"

Este es un clásico. Ocurre cuando una consulta tarda demasiado o el paquete de datos es muy grande. Las causas típicas son:

  • Importar/exportar una base de datos muy grande.
  • Módulos que realizan consultas pesadas.
  • Límite de tiempo de ejecución de PHP demasiado bajo.

Solución paso a paso

  1. Aumenta el tiempo de ejecución de PHP: En DirectAdmin, ve a PHP Selector (o Configuración de PHP). Busca la opción max_execution_time y cámbiala a 300 (5 minutos) o incluso 600.
  2. Aumenta el límite de memoria de PHP: En el mismo lugar, busca memory_limit y ponlo a 256M o 512M.
  3. Aumenta el tamaño máximo de paquete (max_allowed_packet): Este ajuste se hace en el archivo de configuración de MySQL. Si no tienes acceso directo, contacta con tu proveedor de hosting. Un valor típico es 64M o 128M.
  4. Repite el proceso de reparación de tablas que explicamos arriba, ya que a menudo este error deja tablas corruptas.

[TIP] Si estás importando una base de datos grande, hazlo en partes (por ejemplo, usando la opción "Comprimido" de phpMyAdmin o herramientas como BigDump).


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

¿Puedo perder datos al reparar tablas?

No. El comando REPAIR TABLE solo corrige errores internos de las tablas. No borra filas ni columnas. Es seguro.

¿Qué hago si la reparación falla?

Si una tabla no se puede reparar, puede estar gravemente dañada. En ese caso, necesitarás restaurar una copia de seguridad anterior de esa tabla o de toda la base de datos. Siempre ten un backup reciente.

¿Cómo sé si mi versión de MySQL es compatible con PrestaShop?

PrestaShop 1.7 y 8.x requieren MySQL 5.6 o superior (recomendado 5.7 o MariaDB 10.x). Puedes ver la versión en phpMyAdmin, en la pestaña "Servidor". Si es inferior, pide a tu hosting que la actualice.

¿El error "Table 'ps_xxx' doesn't exist" se soluciona reparando?

No. Ese error indica que la tabla no existe. Las causas suelen ser:

  • Una restauración incompleta.
  • Un módulo que no se instaló correctamente.
  • Un ataque o corrupción grave.
    La solución es recrear la tabla desde una copia de seguridad o reinstalar el módulo que la creó.

¿Puedo usar Syspanel (HestiaCP) para lo mismo?

Sí, los pasos son muy similares. En Syspanel (panel HestiaCP, accesible por el puerto 2106), también tienes phpMyAdmin y la opción de gestionar bases de datos. La diferencia es la interfaz, pero los comandos y la lógica son idénticos.


Conclusión: Mantén tu base de datos sana

Los errores de base de datos son frustrantes, pero con estas herramientas y pasos podrás resolver la mayoría de ellos desde DirectAdmin. Recuerda:

  • Haz copias de seguridad periódicas (al menos semanales).
  • Mantén PrestaShop, módulos y temas actualizados.
  • No instales módulos de fuentes dudosas.
  • Monitorea el espacio en disco y los límites de conexión.

Si después de todo esto el problema persiste, el error podría estar en el servidor (configuración de MySQL, firewall, etc.) y necesitarás contactar con el soporte técnico de tu hosting. Pero con esta guía, ya tienes un 90% del camino andado.

¿Te ha funcionado? ¿Tienes alguna otra duda? ¡Déjala en los comentarios y te ayudaremos!

¿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