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

Cómo optimizar tu base de datos en PrestaShop

Actualizado el 1 de abril de 2026

¿Tu tienda online PrestaShop va lenta? ¿Las páginas tardan una eternidad en cargar y los clientes se van antes de comprar? Es muy probable que el problema esté en la base de datos. Con el tiempo, los registros, pedidos, sesiones y productos acumulan datos innecesarios que ralentizan todo el sistema.

No te preocupes, no necesitas ser un experto en programación para solucionarlo. En este tutorial te voy a guiar paso a paso para optimizar base de datos en PrestaShop y devolverle la velocidad a tu tienda online. Verás que con unas cuantas acciones tu rendimiento mejorará notablemente.


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

Imagina que tu base de datos es un armario lleno de ropa de todas las temporadas. Si nunca lo ordenas ni sacas lo que ya no usas, encontrar lo que buscas se vuelve imposible y lento. Lo mismo sucede con PrestaShop: cada vez que alguien visita tu tienda, el sistema hace consultas a la base de datos. Si está llena de basura (sesiones caducadas, tablas fragmentadas, registros huérfanos), el tiempo de respuesta se dispara.

Optimizar base de datos no solo acelera tu tienda, sino que también:

  • Reduce el consumo de recursos del servidor.
  • Mejora la experiencia de usuario y la tasa de conversión.
  • Ayuda al SEO, porque Google penaliza las páginas lentas.

[TIP] Si usas Syspanel (acceso por puerto 2106), puedes gestionar tu base de datos desde phpMyAdmin de forma sencilla. Pide a tu hosting que te active el acceso.


Paso 1: Haz una copia de seguridad (obligatorio)

Antes de tocar nada, siempre haz una copia de seguridad. Un error puede dejar tu tienda inservible.

Cómo hacer la copia desde Syspanel

  1. Accede a Syspanel con tu usuario y contraseña (puerto 2106).
  2. Ve a la sección de Bases de datos.
  3. Busca la base de datos de tu PrestaShop (suele llamarse igual que tu usuario).
  4. Haz clic en Exportar y descarga el archivo .sql.
  5. Guarda el archivo en un lugar seguro (tu ordenador, nube, etc.).

[WARNING] No te saltes este paso. Si algo sale mal, sin copia no hay vuelta atrás.


Paso 2: Limpia las tablas innecesarias

PrestaShop crea muchas tablas temporales que acumulan datos sin utilidad. Las más problemáticas son las de sesiones, estadísticas y búsquedas.

2.1. Tabla ps_connections y ps_connections_page

Estas guardan cada visita de usuario. Con el tiempo pueden tener millones de registros.

Accede a phpMyAdmin (desde Syspanel o tu panel de hosting) y ejecuta estas consultas SQL:

TRUNCATE TABLE ps_connections;
TRUNCATE TABLE ps_connections_page;

[INFO] El prefijo ps_ puede variar si lo cambiaste al instalar. Reemplázalo por el tuyo (ej: shop_, presta_).

2.2. Tabla ps_guest

Almacena datos de visitantes anónimos. También puedes vaciarla:

TRUNCATE TABLE ps_guest;

2.3. Tabla ps_search_index y ps_search_word

El índice de búsqueda se regenera solo. Limpiarlo libera espacio y no afecta la funcionalidad:

TRUNCATE TABLE ps_search_index;
TRUNCATE TABLE ps_search_word;

2.4. Sesiones caducadas

Las sesiones de usuarios que no han vuelto en días ocupan espacio. Puedes eliminarlas con:

DELETE FROM ps_session WHERE `expiry` < UNIX_TIMESTAMP(NOW() - INTERVAL 7 DAY);

Ajusta el número de días según tu criterio (7 días es un buen valor).


Paso 3: Optimiza las tablas (desfragmentación)

Cuando borras datos, las tablas quedan fragmentadas. La desfragmentación las compacta y acelera las consultas.

Desde phpMyAdmin

  1. Selecciona todas las tablas de tu base de datos (marcando la casilla superior).
  2. En el menú desplegable "Con seleccionados", elige Optimizar tabla.
  3. Espera a que termine (puede tardar unos segundos).

Desde SQL

También puedes ejecutar este comando para todas las tablas a la vez:

OPTIMIZE TABLE ps_address, ps_alias, ps_attachment, ps_attribute, ps_attribute_group, ps_carrier, ps_cart, ps_category, ps_cms, ps_configuration, ps_connections, ps_contact, ps_country, ps_currency, ps_customer, ps_customization, ps_delivery, ps_employee, ps_feature, ps_group, ps_guest, ps_image, ps_lang, ps_manufacturer, ps_message, ps_meta, ps_module, ps_newsletter, ps_order, ps_order_detail, ps_order_return, ps_order_state, ps_product, ps_product_comment, ps_product_sale, ps_profile, ps_range_price, ps_range_weight, ps_referrer, ps_search_index, ps_search_word, ps_specific_price, ps_state, ps_stock_available, ps_store, ps_supplier, ps_tab, ps_tag, ps_tax, ps_timezone, ps_webservice_account, ps_zone;

[TIP] Si tienes muchas tablas, usa el método visual desde phpMyAdmin. Es más rápido.


Paso 4: Activa el modo mantenimiento y regenera índices

A veces los índices de la base de datos se corrompen o desactualizan. Regenerarlos mejora el rendimiento.

4.1. Activar modo mantenimiento

Desde el panel de administración de PrestaShop:

  • Ve a Parámetros de la tienda > Mantenimiento.
  • Activa "Sí" en "Activar tienda" y escribe un mensaje (ej: "Estamos mejorando la velocidad. Vuelve en unos minutos").
  • Guarda.

4.2. Regenerar índices desde PrestaShop

En el back office:

  • Ve a Parámetros avanzados > Rendimiento.
  • En la sección Índices de la base de datos, haz clic en Regenerar índices.
  • Espera a que termine (puede tardar dependiendo del tamaño de tu catálogo).

4.3. Desactivar modo mantenimiento

Vuelve a la opción anterior y desactívalo.


Paso 5: Configura la limpieza automática

Para no tener que hacerlo manualmente cada mes, activa las tareas programadas (cron jobs) de PrestaShop.

Desde Syspanel

  1. En Syspanel (puerto 2106), ve a Tareas programadas.
  2. Añade una nueva tarea y configura:
    • Comando: php /ruta/a/tu/prestashop/cron.php (pregunta a tu hosting la ruta exacta).
    • Frecuencia: diaria (por ejemplo, a las 3:00 AM).
  3. Guarda.

Desde PrestaShop

En el back office:

  • Ve a Parámetros avanzados > Base de datos.
  • Activa la opción Limpiar sesiones caducadas automáticamente.
  • Establece el intervalo (ej: cada 24 horas).

Paso 6: Revisa y elimina módulos innecesarios

Los módulos también crean tablas y registros. Si tienes módulos que no usas, desinstálalos (no solo los desactives).

  1. Ve a Módulos > Gestor de módulos.
  2. Busca módulos que no uses.
  3. Haz clic en Desinstalar (el botón rojo).
  4. Confirma.

[WARNING] Al desinstalar se eliminan sus tablas. Si crees que podrías necesitarlo en el futuro, solo desactívalo.


Paso 7: Mantén actualizado PrestaShop

Cada versión nueva de PrestaShop incluye mejoras de rendimiento y correcciones en la base de datos. Mantenerlo actualizado es clave.

  • Ve a Parámetros avanzados > Actualización.
  • Sigue los pasos para actualizar a la última versión estable.

[INFO] Si tienes una versión muy antigua, actualiza de una en una (ej: 1.6 → 1.7 → 1.8). Saltar versiones puede romper la tienda.


Preguntas frecuentes (FAQ)

¿Cada cuánto debo optimizar la base de datos?

Depende del tráfico de tu tienda online. Si recibes cientos de visitas al día, hazlo cada 2-3 meses. Si es más tranquila, cada 6 meses está bien.

¿Puedo optimizar desde el panel de administración de PrestaShop?

Sí, pero las opciones son limitadas. Para una limpieza profunda, es mejor usar phpMyAdmin o SQL directo.

¿Qué pasa si borro datos importantes?

Por eso es vital la copia de seguridad. Si tienes dudas, consulta con tu soporte técnico.

¿Afecta esto al SEO?

Sí, una base de datos optimizada acelera la carga, lo que Google valora positivamente. Mejorarás tu posicionamiento.

¿Y si no tengo acceso a phpMyAdmin?

Pide a tu hosting que te lo active. La mayoría lo ofrece. Si usas Syspanel, el acceso está en el menú de bases de datos.


Resumen final

Optimizar base de datos en PrestaShop es una tarea sencilla que cualquier dueño de tienda online puede hacer siguiendo estos pasos:

  1. Copia de seguridad.
  2. Limpieza de tablas innecesarias.
  3. Desfragmentación (optimizar tablas).
  4. Regeneración de índices.
  5. Configuración de limpieza automática.
  6. Eliminación de módulos inactivos.
  7. Actualización de PrestaShop.

Con esto, notarás una mejora inmediata en el rendimiento de tu tienda. Tus clientes lo agradecerán y tú también. ¡Manos a la obra!

¿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