Si buscas la solución a limpiar base de datos prestashop, aquí la tienes explicada paso a paso por el equipo de soporte de AZprestashop.

Con los años, la base de datos de PrestaShop acumula millones de filas que no aportan nada: carritos vacíos de visitantes, registros de conexiones, invitados y logs. Por lo tanto, limpiar la base de datos de PrestaShop de vez en cuando acelera el back office y reduce el tamaño de las copias.
Qué tablas engordan
| Tabla | Qué contiene |
|---|---|
| ps_cart | Carritos de todos los visitantes, la mayoría sin pedido. |
| ps_connections / ps_connections_source / ps_connections_page | Estadísticas de visitas de los módulos de estadísticas. |
| ps_guest | Un registro por visitante anónimo. |
| ps_log | Registros del back office. |
| ps_mail | Historial de correos enviados. |
| ps_specific_price_priority | Puede crecer con importaciones repetidas. |
Opción segura: el módulo oficial de limpieza
PrestaShop Cleaner (pscleaner), disponible en Módulos, permite borrar carritos antiguos sin pedido, limpiar tablas de estadísticas y comprobar la integridad de la base de datos. Antes de usarlo, haz copia; después, ejecuta cada opción por separado.
Opción manual: consultas con copia previa
Si prefieres SQL, estas consultas borran carritos sin pedido de más de 3 meses y registros antiguos de conexiones (sustituye el prefijo ps_ si es distinto):
DELETE c FROM ps_cart c
LEFT JOIN ps_orders o ON o.id_cart = c.id_cart
WHERE o.id_order IS NULL AND c.date_upd < DATE_SUB(NOW(), INTERVAL 3 MONTH);
DELETE FROM ps_connections WHERE date_add < DATE_SUB(NOW(), INTERVAL 3 MONTH);
DELETE FROM ps_connections_source WHERE date_add < DATE_SUB(NOW(), INTERVAL 3 MONTH);
DELETE FROM ps_log WHERE date_add < DATE_SUB(NOW(), INTERVAL 6 MONTH);
Por último, ejecuta OPTIMIZE TABLE sobre las tablas afectadas y desactiva los módulos de estadísticas que no consultes para que no vuelvan a crecer.
Preguntas frecuentes sobre limpiar base de datos prestashop
¿Borrar carritos afecta a los pedidos?
No, si excluyes los carritos con pedido asociado, como hace la consulta anterior. Nunca borres de ps_orders.
¿Cada cuánto conviene limpiar?
Cada 3-6 meses en tiendas con tráfico. Mejor aún, prográmalo en el mantenimiento.
En nuestro plan de mantenimiento la limpieza trimestral va incluida, con copia y comprobación posterior.
¿Necesitas ayuda con limpiar base de datos PrestaShop?
Si has seguido estos pasos y el problema continúa, no te preocupes: es más habitual de lo que parece. En primer lugar, revisa el resto de consejos sobre rendimiento y velocidad de nuestro blog. Además, puedes consultar la documentación oficial de PrestaShop. Sin embargo, si prefieres que lo resolvamos nosotros, nuestro mantenimiento y soporte PrestaShop se encarga con precio cerrado y copia de seguridad previa. Por lo tanto, solo tienes que contarnos qué te pasa y te contestamos en menos de 24 horas laborables.
- Etiquetas: PrestaShop 1.6.x, PrestaShop 1.7.x, PrestaShop 8.x, PrestaShop 9
¿No te ha funcionado o no quieres tocar código?
Nuestro equipo de soporte PrestaShop lo hace por ti: te decimos el precio antes de empezar y dejamos copia de seguridad de todo.