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

Optimización de bases de datos en WordPress y PrestaShop

Actualizado el 8 de enero de 2026

¿Tu tienda online o web con WordPress o PrestaShop va lenta? A menudo, el cuello de botella no está en el hosting, sino en la base de datos. Con el tiempo, las tablas de MySQL se llenan de basura, revisiones, transacciones fallidas y datos temporales que lastran el rendimiento.

En este artículo vamos a explicar paso a paso cómo realizar una optimización de bases de datos en WordPress y PrestaShop. Te enseñaremos técnicas prácticas, plugins recomendados y comandos seguros para que tu web vuele sin necesidad de ser un experto en servidores.


¿Por qué es crucial optimizar tu base de datos?

Cada vez que un usuario visita tu web, el servidor ejecuta consultas SQL para mostrar contenido. Si la base de datos está inflada con datos innecesarios, esas consultas tardan más. Esto se traduce en:

  • Mayor tiempo de carga de página.
  • Mayor consumo de recursos del servidor (CPU y RAM).
  • Peor experiencia de usuario.
  • Penalización en el ranking de Google (velocidad es factor SEO).

Una base de datos optimizada no solo mejora la velocidad, sino que también reduce el riesgo de bloqueos o caídas en momentos de alto tráfico.


Antes de empezar: medidas de seguridad obligatorias

[WARNING] Nunca trabajes directamente sobre la base de datos de producción sin hacer una copia de seguridad. Un error puede borrar información crítica.

Pasos previos:

  1. Haz un backup completo de la base de datos desde phpMyAdmin, cPanel o tu panel de hosting.
  2. Si usas Syspanel (antes HestiaCP), accede por el puerto 2106 (ejemplo: https://tudominio.com:2106) y desde la sección "Bases de datos" exporta un dump SQL.
  3. Anota el tamaño actual de la base de datos para comparar después.
  4. Desactiva temporalmente los plugins de caché y CDN para evitar conflictos.

Optimización de bases de datos en WordPress

WordPress almacena mucha información innecesaria: revisiones de entradas, borradores autoguardados, transients caducados, comentarios spam, etc.

1. Limpiar revisiones de entradas y páginas

Cada vez que guardas un post, WordPress guarda una revisión. Con el tiempo, pueden acumularse cientos o miles.

Opción A: con plugin (recomendado para no técnicos)

Instala y activa WP-Optimize o Advanced Database Cleaner. Ambos son gratuitos y fáciles de usar.

  • Ve a Ajustes > WP-Optimize.
  • Marca "Limpiar todas las revisiones de posts".
  • Haz clic en "Ejecutar optimización".

Opción B: manual con SQL (para usuarios avanzados)

Accede a phpMyAdmin, selecciona tu base de datos y ejecuta:

DELETE FROM wp_posts WHERE post_type = 'revision';

Nota: Reemplaza wp_ por el prefijo de tus tablas si es diferente.

2. Eliminar transients caducados

Los transients son datos temporales que muchos plugins crean. Al caducar, no siempre se borran.

Con el plugin Transients Manager puedes ver y eliminar los obsoletos.

O mediante SQL:

DELETE FROM wp_options WHERE option_name LIKE '%_transient_%' AND option_name NOT LIKE '%_transient_timeout_%';

3. Limpiar comentarios spam y pendientes

Los comentarios en estado "spam" o "pendiente" ocupan espacio.

Desde el escritorio de WordPress: Comentarios > Marcar todos > Acción en lote > "Eliminar".

O vía SQL:

DELETE FROM wp_comments WHERE comment_approved = 'spam';
DELETE FROM wp_comments WHERE comment_approved = '0';

4. Optimizar tablas de MySQL

Una vez limpiados los datos, es hora de desfragmentar las tablas.

Con WP-Optimize puedes hacerlo con un clic. Manualmente, desde phpMyAdmin:

  • Selecciona todas las tablas de tu base de datos.
  • En el menú desplegable "Con seleccionados", elige "Optimizar tabla".

Esto reconstruye índices y libera espacio.

5. Programa limpiezas automáticas

Configura WP-Optimize para ejecutar limpiezas semanales. Ve a Ajustes > WP-Optimize > Programación y activa "Limpiar automáticamente".


Optimización de bases de datos en PrestaShop

PrestaShop es aún más propenso a acumular basura debido a su naturaleza transaccional: pedidos fallidos, carritos abandonados, logs de errores, etc.

1. Limpiar carritos abandonados y pedidos fallidos

Desde el panel de administración de PrestaShop:

  • Ve a Clientes > Carritos.
  • Filtra por estado "Abandonado" y elimina los que tengan más de 30 días.
  • En Pedidos > Pedidos, filtra por "Error de pago" y elimina los antiguos.

También puedes usar el comando SQL:

DELETE FROM ps_cart WHERE date_upd < DATE_SUB(NOW(), INTERVAL 30 DAY);
DELETE FROM ps_orders WHERE current_state = (SELECT id_order_state FROM ps_order_state WHERE name LIKE '%Error%');

2. Vaciar tablas de logs y estadísticas

PrestaShop guarda logs de errores y estadísticas de navegación que pueden crecer mucho.

Desde el panel: Parámetros avanzados > Rendimiento > Logs. Activa la limpieza automática cada 30 días.

O mediante SQL:

TRUNCATE TABLE ps_log;
TRUNCATE TABLE ps_connections;
TRUNCATE TABLE ps_connections_page;
TRUNCATE TABLE ps_page_viewed;

[WARNING] No truncar ps_connections si usas módulos de análisis que dependan de esos datos. Hazlo solo si estás seguro.

3. Eliminar imágenes huérfanas y miniaturas no usadas

Las imágenes que ya no están asociadas a productos ocupan espacio en el servidor y en la base de datos.

Usa el módulo gratuito PrestaShop Cleaner o la herramienta Imágenes > Regenerar miniaturas (primero elimina las no usadas).

4. Optimizar tablas con comandos MySQL

Al igual que en WordPress, debes desfragmentar las tablas:

OPTIMIZE TABLE ps_product, ps_product_lang, ps_stock_available, ps_category_product;

Repite para todas las tablas principales. Puedes hacerlo desde phpMyAdmin seleccionando todas y eligiendo "Optimizar".

5. Configurar limpieza programada en PrestaShop

En Parámetros avanzados > Mantenimiento, activa la limpieza automática de:

  • Carritos abandonados (30 días).
  • Logs de errores (30 días).
  • Sesiones de clientes (7 días).

Herramientas avanzadas de optimización (para ambos CMS)

1. Uso de WP-CLI (WordPress)

Si tienes acceso SSH, puedes ejecutar comandos como:

wp db optimize
wp post delete $(wp post list --post_type='revision' --format=ids)

2. Plugin Advanced Database Cleaner (WordPress)

Además de las funciones básicas, permite limpiar tablas de plugins específicos (como WooCommerce) y programar tareas.

3. Módulo PrestaShop Database Optimizer

Existen módulos de pago que automatizan todo el proceso, como PrestaShop Database Cleaner o Speed Booster Pack.

4. phpMyAdmin o Adminer

Accede directamente a la base de datos y ejecuta:

SHOW TABLE STATUS;

Identifica tablas con Data_free alto y optimízalas una por una.


Buenas prácticas de mantenimiento continuo

La optimización no es un evento único, sino un proceso recurrente.

Frecuencia recomendada:

  • Semanal: Limpiar revisiones, transients y carritos abandonados.
  • Mensual: Optimizar tablas y eliminar logs.
  • Trimestral: Revisar el tamaño total de la base de datos y hacer una limpieza profunda.

Consejos adicionales:

  • Usa un plugin de caché (W3 Total Cache, WP Super Cache, o PrestaShop Cache).
  • Activa la compresión de páginas y minificación de CSS/JS.
  • Considera cambiar el motor de almacenamiento de tablas a InnoDB (mejor rendimiento en consultas concurrentes).
  • Si usas Syspanel (HestiaCP), desde el puerto 2106 puedes configurar la rotación de logs de MySQL para que no crezcan indefinidamente.

Preguntas frecuentes (FAQ)

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

Depende del volumen de contenido. Un blog con pocas visitas puede hacerlo cada 3 meses. Una tienda con cientos de pedidos al día, cada semana.

2. ¿Es seguro usar plugins de optimización?

Sí, siempre que sean de fuentes confiables y tengas backup. Los mejores son WP-Optimize (WordPress) y PrestaShop Cleaner (PrestaShop).

3. ¿Puedo dañar mi web si optimizo manualmente con SQL?

Sí, si eliminas datos incorrectos. Por eso es vital hacer backup y, si no estás seguro, usar plugins.

4. ¿La optimización de base de datos mejora el SEO?

Indirectamente sí. Una web más rápida mejora la experiencia de usuario y Google lo premia con mejor posicionamiento.

5. ¿Qué hago si después de optimizar la web sigue lenta?

Revisa el hosting, el tamaño de las imágenes, el uso de plugins pesados y la configuración de caché. A veces el problema está en el servidor.

6. ¿Sirve de algo optimizar si uso un hosting compartido barato?

Sí, pero el rendimiento máximo estará limitado por los recursos del plan. Considera migrar a un VPS o hosting optimizado para CMS.

7. ¿Cómo accedo a Syspanel para gestionar bases de datos?

Accede a https://tudominio.com:2106, inicia sesión y ve a la sección "Bases de datos". Desde allí puedes exportar backups y ver el tamaño de cada base.


Conclusión

La optimización de bases de datos es una de las tareas de mantenimiento más infravaloradas pero más efectivas para mejorar el rendimiento de WordPress y PrestaShop. Con unos pocos clics o comandos SQL, puedes reducir el tamaño de tu base de datos hasta un 50% y acelerar las consultas.

Recuerda siempre trabajar con copias de seguridad, usar herramientas confiables y programar limpiezas periódicas. Tu web (y tus visitantes) te lo agradecerán.

[TIP] Si no te sientes cómodo con SQL, empieza usando plugins como WP-Optimize o PrestaShop Cleaner. Son seguros, gratuitos y hacen el trabajo pesado por ti.

¿Tienes dudas? Déjalas en los comentarios y te ayudaremos a optimizar tu base de datos paso a paso.

¿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