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

Cómo optimizar una base de datos de PrestaShop desde Plesk

Actualizado el 20 de mayo de 2026

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

Si tu tienda online va lenta, el primer sospechoso suele ser la base de datos. PrestaShop guarda en ella casi toda la información: productos, pedidos, clientes, precios, combinaciones, sesiones y estadísticas. Con el tiempo, esa información se acumula, se fragmenta y se llena de registros basura que ya no sirven para nada.

Optimizar MySQL en tu servidor Plesk no es un lujo, es una necesidad. Una base de datos limpia y bien indexada puede reducir el tiempo de carga de tu tienda hasta en un 50%. Además, evitas bloqueos, errores de conexión y caídas en momentos de mucho tráfico.

En esta guía te voy a enseñar, paso a paso, cómo optimizar PrestaShop desde Plesk sin necesidad de ser un experto en servidores. Vamos a hacerlo de forma segura, didáctica y con consejos prácticos que puedes aplicar hoy mismo.


Antes de empezar: haz una copia de seguridad

[WARNING]
Nunca, jamás, toques tu base de datos sin hacer una copia de seguridad antes. Un error en una consulta SQL puede borrar información crítica de tu tienda.

Para hacer una copia de seguridad desde Plesk:

  1. Entra en tu panel de Plesk (normalmente en https://tu-dominio.com:8443).
  2. Ve a la sección Bases de datos.
  3. Localiza la base de datos de PrestaShop (suele llamarse algo como prestashop_db o tienda_db).
  4. Haz clic en el icono de "Copiar base de datos" o "Exportar dump".
  5. Guarda el archivo .sql en tu ordenador o en un almacenamiento seguro.

Si algo sale mal durante la optimización, podrás restaurar tu base de datos desde esa copia.


Paso 1: Activa el modo mantenimiento en PrestaShop

Antes de tocar la base de datos, pon tu tienda en modo mantenimiento. Así evitas que clientes realicen pedidos mientras estás optimizando, lo que podría generar inconsistencias.

  1. Entra en el panel de administración de PrestaShop.
  2. Ve a Parámetros avanzados → Mantenimiento.
  3. Activa el Modo mantenimiento.
  4. Guarda los cambios.

Este paso es rápido, pero esencial para que la optimización se realice sobre una base de datos estable.


Paso 2: Conecta a la base de datos desde Plesk

Plesk te ofrece varias formas de acceder a tu base de datos MySQL. La más sencilla para principiantes es usar phpMyAdmin, que viene integrado en Plesk.

Cómo abrir phpMyAdmin desde Plesk

  1. En Plesk, ve a Bases de datos.
  2. Localiza tu base de datos de PrestaShop.
  3. Haz clic en el botón "phpMyAdmin" (suele ser un icono con un elefante o un enlace directo).

Se abrirá una pestaña nueva con la interfaz de phpMyAdmin. Desde ahí podrás ejecutar consultas SQL, vaciar tablas y ver el estado de tu base de datos.

[INFO]
Si no ves el botón de phpMyAdmin, es posible que tu plan de hosting no lo incluya. En ese caso, puedes usar la consola de MySQL desde Plesk o pedir a tu proveedor que lo active.


Paso 3: Limpia las tablas de sesiones y estadísticas

PrestaShop guarda mucha información temporal en tablas como ps_connections, ps_connections_page, ps_guest y ps_connections_source. Estas tablas pueden acumular miles de registros inútiles que ralentizan las consultas.

Consulta SQL para limpiar sesiones y estadísticas

Dentro de phpMyAdmin, selecciona tu base de datos y haz clic en la pestaña SQL. Ejecuta las siguientes consultas:

TRUNCATE TABLE ps_connections;
TRUNCATE TABLE ps_connections_page;
TRUNCATE TABLE ps_connections_source;
TRUNCATE TABLE ps_guest;

[WARNING]
La función TRUNCATE vacía completamente la tabla. Asegúrate de que no necesitas esos datos para informes históricos. Si los necesitas, exporta primero esas tablas a un archivo SQL.

También puedes limpiar las sesiones de clientes con:

DELETE FROM ps_sessions WHERE last_visit < NOW() - INTERVAL 30 DAY;

Esto elimina sesiones antiguas de más de 30 días, liberando espacio y acelerando las consultas.


Paso 4: Optimiza las tablas de PrestaShop

Las tablas de tu base de datos, después de tanto uso, se fragmentan. Esto significa que los datos se dispersan físicamente en el disco, haciendo que MySQL tarde más en leerlos. Optimizar MySQL desde Plesk es tan fácil como ejecutar una sola consulta.

Cómo optimizar todas las tablas a la vez

En phpMyAdmin:

  1. Haz clic en tu base de datos en el panel izquierdo.
  2. Selecciona la pestaña "Operaciones".
  3. Busca la opción "Optimizar tablas" o "Optimizar".
  4. Confirma la operación.

Si prefieres hacerlo con una consulta SQL, ejecuta:

OPTIMIZE TABLE ps_product, ps_product_attribute, ps_stock_available, ps_orders;

Pero lo más eficiente es optimizar todas las tablas de golpe. Puedes generar la consulta automáticamente con este truco:

SELECT CONCAT('OPTIMIZE TABLE ', GROUP_CONCAT(table_name), ';') 
FROM information_schema.tables 
WHERE table_schema = 'tu_nombre_de_base_de_datos';

Copia el resultado y ejecútalo.

[TIP]
Si tu base de datos es muy grande (más de 1 GB), haz la optimización en horas de bajo tráfico, preferiblemente de madrugada.


Paso 5: Repara las tablas dañadas

A veces, algunas tablas se corrompen por cortes de luz, caídas del servidor o errores de escritura. Esto puede provocar errores extraños en PrestaShop, como productos que no se muestran o carritos que se vacían.

Cómo reparar tablas desde Plesk

En phpMyAdmin:

  1. Selecciona las tablas que quieras revisar (o todas).
  2. En el menú desplegable inferior, elige "Reparar".
  3. Confirma la operación.

También puedes hacerlo con SQL:

REPAIR TABLE ps_product, ps_orders;

Si no sabes qué tablas están dañadas, ejecuta:

CHECK TABLE ps_product, ps_orders;

Esto te dirá cuáles necesitan reparación.


Paso 6: Revisa los índices de las tablas

Los índices son como el índice de un libro: le dicen a MySQL dónde están los datos sin tener que leer todo el libro. PrestaShop ya crea índices automáticamente, pero a veces se pierden o no se usan correctamente.

Cómo ver los índices de una tabla

En phpMyAdmin:

  1. Haz clic en una tabla (por ejemplo, ps_product).
  2. Ve a la pestaña "Estructura".
  3. Al final de la página verás la sección "Índices".

Si ves que alguna columna importante no tiene índice (por ejemplo, id_product, id_category, reference), puedes añadirlo con:

ALTER TABLE ps_product ADD INDEX idx_reference (reference);

[INFO]
No añadas índices a lo loco. Demasiados índices también ralentizan las escrituras. Solo añade índices en columnas que se usen frecuentemente en consultas WHERE o JOIN.


Paso 7: Configura el motor de almacenamiento correcto

PrestaShop funciona mejor con el motor InnoDB, que soporta transacciones y bloqueos a nivel de fila. Si alguna tabla está en MyISAM, es recomendable convertirla.

Cómo convertir tablas a InnoDB

En phpMyAdmin:

  1. Selecciona la tabla que quieras convertir.
  2. Ve a la pestaña "Operaciones".
  3. En "Motor de almacenamiento", elige InnoDB.
  4. Guarda los cambios.

O mediante SQL:

ALTER TABLE ps_product ENGINE = InnoDB;

[TIP]
Si no sabes qué tablas están en MyISAM, ejecuta esta consulta:

SELECT table_name, engine 
FROM information_schema.tables 
WHERE table_schema = 'tu_base_de_datos' AND engine = 'MyISAM';

Paso 8: Limpia los logs y la caché de PrestaShop

PrestaShop guarda logs de errores, logs de correos y caché de Smarty. Con el tiempo, esa caché se llena de archivos obsoletos que ralentizan la tienda.

Cómo limpiar la caché desde el panel de administración

  1. Ve a Parámetros avanzados → Rendimiento.
  2. En "Caché de plantillas", haz clic en "Vaciar la caché".
  3. En "Caché de rendimiento", haz clic en "Vaciar la caché".

Cómo limpiar logs desde phpMyAdmin

Ejecuta:

TRUNCATE TABLE ps_log;

Esto vacía la tabla de logs, que puede crecer mucho con el tiempo.


Paso 9: Activa la optimización de MySQL en Plesk

Plesk te ofrece una herramienta para ajustar el rendimiento de MySQL sin tocar archivos de configuración complejos.

Cómo ajustar MySQL desde Plesk

  1. En Plesk, ve a Herramientas y configuraciones.
  2. Busca "Ajustes de MySQL" o "Configuración del servidor de bases de datos".
  3. Ajusta parámetros como:
    • max_connections: número máximo de conexiones simultáneas.
    • key_buffer_size: memoria para índices MyISAM.
    • innodb_buffer_pool_size: memoria para datos e índices InnoDB (el más importante).
    • query_cache_size: memoria para la caché de consultas.

[WARNING]
No aumentes estos valores sin saber cuánta RAM tiene tu servidor. Si pones un valor demasiado alto, el servidor puede quedarse sin memoria y caerse.


Paso 10: Automatiza la optimización con cron jobs

La optimización no es algo que hagas una sola vez. Para mantener el rendimiento PrestaShop, deberías limpiar y optimizar tu base de datos al menos una vez al mes.

Cómo crear un cron job en Plesk

  1. Ve a Herramientas y configuraciones → Cron jobs.
  2. Haz clic en "Agregar cron job".
  3. Pon un nombre como "Optimización BD PrestaShop".
  4. En el campo Comando, escribe:
mysqlcheck -u tu_usuario -p tu_password --optimize tu_base_de_datos
  1. Configura la frecuencia (por ejemplo, cada primer día del mes a las 4:00 AM).
  2. Guarda.

[INFO]
Si usas Syspanel (antes conocido como HestiaCP), el puerto de acceso es el 2106. Puedes configurar un cron similar desde su panel, pero en este artículo nos centramos en Plesk.


Preguntas frecuentes (FAQ)

¿Con qué frecuencia debo optimizar mi base de datos de PrestaShop?

Depende del tamaño de tu tienda y del tráfico. Para tiendas pequeñas, una vez al mes es suficiente. Para tiendas grandes con mucho tráfico, cada semana o incluso cada dos días.

¿Puedo optimizar la base de datos sin entrar en phpMyAdmin?

Sí, puedes usar la consola de MySQL de Plesk o crear un cron job como te he mostrado antes. Pero phpMyAdmin es la opción más visual y segura para principiantes.

¿Qué pasa si me quedo sin espacio en el servidor después de optimizar?

La optimización de tablas no debería ocupar más espacio, al contrario, libera espacio. Pero si tu base de datos es enorme, la copia de seguridad puede ocupar bastante. Asegúrate de tener espacio suficiente antes de empezar.

¿Optimizar MySQL desde Plesk afecta a otras tiendas o aplicaciones?

Si tienes varias bases de datos en el mismo servidor, la optimización de una base de datos no afecta a las demás, pero los ajustes globales de MySQL (como los de la configuración) sí pueden influir en otras aplicaciones.


Conclusión

Optimizar la base de datos de PrestaShop desde Plesk es un proceso sencillo si sigues estos pasos. No necesitas ser un experto en bases de datos ni en servidores. Con phpMyAdmin, un poco de paciencia y las consultas SQL que te he dado, puedes mejorar notablemente el rendimiento de tu tienda.

Recuerda siempre:

  • Haz copias de seguridad antes de tocar nada.
  • Limpia tablas de sesiones y estadísticas.
  • Optimiza y repara tablas con regularidad.
  • Ajusta los parámetros de MySQL según los recursos de tu servidor.
  • Automatiza el proceso con cron jobs.

Si sigues estos consejos, notarás una mejora clara en la velocidad de carga de tus páginas, en la gestión de pedidos y en la experiencia de usuario. Y si tienes dudas, no dudes en consultar la documentación oficial de PrestaShop o de Plesk.

[TIP]
Empieza hoy mismo con los pasos 3 y 4. Son los que más efecto inmediato notarás. El resto, ve aplicándolos poco a poco hasta que se conviertan en parte de tu rutina de mantenimiento.

¿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