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

Optimizar el rendimiento de MySQL en WordPress y PrestaShop

Actualizado el 18 de febrero de 2026

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

Cuando tu tienda online o tu blog empiezan a crecer, es normal que notes que las páginas tardan más en cargar. El culpable más frecuente no es siempre el hosting o el diseño, sino la base de datos. Tanto WordPress como PrestaShop guardan absolutamente todo en MySQL: desde un simple comentario hasta el stock de tus productos. Con el tiempo, esa información se acumula, se fragmenta y se llena de "basura" que ralentiza cada consulta.

La MySQL optimización no es un lujo, es una necesidad. Piensa en tu base de datos como en el armario de tu casa: si nunca lo ordenas, terminas tardando más en encontrar lo que buscas. Lo mismo ocurre con las consultas que hacen tus páginas cada vez que un visitante entra. Si optimizas la base de datos, reduces el tiempo de carga, mejoras la experiencia del usuario y, de paso, ayudas a tu posicionamiento SEO, ya que Google penaliza las webs lentas.

En este artículo te voy a explicar, paso a paso y sin tecnicismos innecesarios, cómo mejorar el rendimiento de MySQL tanto en WordPress como en PrestaShop. No necesitas ser un experto en servidores, solo seguir estas recomendaciones con calma.

Antes de empezar: haz una copia de seguridad siempre

[WARNING]
Nunca, bajo ninguna circunstancia, toques tu base de datos sin tener una copia de seguridad reciente. Un error en una consulta SQL o un plugin de limpieza mal configurado puede borrar información crítica. Si usas Syspanel (recuerda, el acceso es por el puerto 2106), busca la opción de "Copias de seguridad" y genera una antes de continuar.

Además, te recomiendo que actives las copias automáticas semanales. Así, si algo sale mal, puedes restaurar todo en cuestión de minutos.

1. Identifica los problemas actuales de tu base de datos

Antes de optimizar, necesitas saber qué está fallando. Hay dos herramientas gratuitas y muy útiles que te lo dirán:

1.1. phpMyAdmin (o la herramienta de gestión de Syspanel)

Accede a tu panel de control. Si usas Syspanel, entra por el puerto 2106 y busca la sección de "Bases de datos". Allí podrás abrir phpMyAdmin.

Una vez dentro, verás una lista de tablas. Fíjate en dos datos importantes:

  • Tamaño: si alguna tabla supera los 100 MB, es candidata a optimización.
  • Sobrecarga (Overhead): es el espacio desperdiciado. Si ves números superiores a 1 MB en la columna "Sobrecarga", hay trabajo por hacer.

1.2. Plugins específicos

Para WordPress, instala WP-Optimize o Advanced Database Cleaner. Ambos te muestran un informe claro de qué ocupa espacio y qué es basura. Para PrestaShop, usa el módulo MySQL Performance o revisa los informes de rendimiento en el back office (Parámetros avanzados > Rendimiento).

2. Limpieza básica de la base de datos (paso a paso)

Una vez identificado el problema, es hora de limpiar. Aquí tienes una guía práctica para cada plataforma.

2.1. En WordPress: elimina lo que no sirve

WordPress es un acumulador nato. Cada vez que un usuario deja un comentario, cada revisión de entrada, cada transient (datos temporales) que se guarda... todo va a parar a MySQL. Sigue estos pasos:

  1. Elimina revisiones antiguas de entradas y páginas. Cada vez que editas un artículo, WordPress guarda una versión anterior. Con el tiempo, esto puede suponer cientos de filas innecesarias. Con un plugin como WP-Optimize, puedes borrarlas todas de una vez o dejar solo las últimas 5.
  2. Limpia los comentarios spam y los que estén en la papelera. Los comentarios spam se acumulan rápido y ocupan espacio.
  3. Borra los transient caducados. Son datos temporales que usan los plugins para guardar caché. Si no se limpian, se quedan ahí para siempre.
  4. Vacía la papelera de medios. Si has subido imágenes y luego las has borrado, es posible que sigan ocupando espacio en la base de datos.

Puedes hacer todo esto manualmente con SQL, pero es más seguro y rápido usar un plugin. Ejecuta la limpieza una vez al mes.

2.2. En PrestaShop: optimiza las tablas de pedidos y clientes

PrestaShop es más complejo porque maneja datos transaccionales. No puedes borrar pedidos antiguos sin más, pero sí puedes:

  1. Eliminar carritos abandonados con más de 30 días. No sirven para nada y llenan la tabla ps_cart.
  2. Limpiar las sesiones antiguas. Cada visitante genera una sesión. Si tienes mucho tráfico, la tabla ps_connections y ps_sessions crece rápido.
  3. Optimizar las tablas de búsqueda. PrestaShop guarda un índice de búsqueda que se regenera solo. Puedes vaciarlo y dejarlo que se reconstruya, ganando espacio.
  4. Revisa los logs y mensajes de error antiguos. Si tienes el modo debug activado, se generan muchísimos registros.

En el back office de PrestaShop, ve a "Parámetros avanzados > Base de datos" y encontrarás una herramienta para optimizar tablas directamente. Es muy visual y te dice cuánto espacio puedes liberar.

3. Optimización técnica de MySQL: los índices y las consultas

Limpiar es solo la mitad del trabajo. La otra mitad es asegurarte de que MySQL trabaja de forma eficiente. Aquí es donde entra la optimización de verdad.

3.1. ¿Qué son los índices y por qué importan?

Un índice en MySQL es como el índice de un libro: le permite al motor encontrar los datos sin tener que leer todo el libro. Si tus tablas no tienen índices en las columnas que usas para buscar (por ejemplo, el ID del producto en PrestaShop o la fecha de publicación en WordPress), cada consulta es lentísima.

  • En WordPress, las tablas wp_posts y wp_postmeta son las que más sufren. Asegúrate de que tienen índices en post_type, post_status y post_date.
  • En PrestaShop, las tablas ps_product, ps_stock_available y ps_category_product deben tener índices en las columnas que usas para filtrar por categoría o por stock.

Puedes ver los índices existentes en phpMyAdmin (pestaña "Estructura" de cada tabla). Si no sabes cómo añadirlos, no te preocupes: los plugins de optimización suelen hacerlo automáticamente.

3.2. El comando mágico: OPTIMIZE TABLE

Este comando desfragmenta las tablas y recupera espacio. Es como desfragmentar el disco duro de tu ordenador. No lo ejecutes con demasiada frecuencia (una vez al mes es suficiente), ya que bloquea la tabla durante unos segundos.

En phpMyAdmin, selecciona todas las tablas de tu base de datos y en el desplegable inferior elige "Optimizar". En Syspanel, desde la sección de bases de datos también tienes esta opción disponible.

[TIP]
Hazlo en horas de poco tráfico (por la noche o a primera hora de la mañana) para evitar que los usuarios noten una microcaída.

4. Configuración del servidor MySQL (my.cnf)

Si ya has limpiado y optimizado las tablas pero sigues notando lentitud, es hora de ajustar la configuración del servidor MySQL. Este archivo se llama my.cnf y se encuentra en el servidor. Si usas un hosting compartido, probablemente no tengas acceso, pero si tienes un VPS o un servidor dedicado (o un plan gestionado con Syspanel), puedes editarlo.

Parámetros clave que debes revisar:

  • innodb_buffer_pool_size: es la memoria que MySQL usa para cachear datos e índices. Se recomienda que sea entre el 50% y el 70% de la RAM total del servidor. Si tienes 4 GB de RAM, ponle 2 GB o 2.5 GB.
  • query_cache_size: aunque está obsoleto en versiones modernas de MySQL (8.0+), si usas MariaDB o MySQL 5.7, puede ayudar. Si no sabes qué versión tienes, déjalo como está.
  • max_connections: el número máximo de conexiones simultáneas. Si tu web recibe muchos visitantes, súbelo a 150 o 200.
  • tmp_table_size y max_heap_table_size: controlan el tamaño máximo de las tablas temporales en memoria. Si son muy pequeñas, MySQL usa el disco, que es más lento. Ponles 64 MB o 128 MB.

[WARNING]
No cambies estos valores sin saber lo que haces. Un valor demasiado alto puede agotar la memoria del servidor y tumbar todo el sistema. Si no estás seguro, consulta con tu proveedor de hosting o busca la ayuda de un profesional.

5. Plugins y módulos de caché que te harán la vida más fácil

La optimización de MySQL no solo se hace "por debajo". También puedes reducir la carga de la base de datos usando caché a nivel de aplicación.

5.1. Para WordPress

  • W3 Total Cache o WP Super Cache: generan páginas HTML estáticas y las sirven sin consultar MySQL. Es el cambio más notable que notarás.
  • Redis o Memcached: si tu hosting lo permite, activa estos sistemas de caché de objetos. Reducen las consultas a la base de datos en un 80% o más.

5.2. Para PrestaShop

  • Activa la caché de plantillas en "Parámetros avanzados > Rendimiento".
  • Usa el módulo de caché de SQL que trae por defecto. Puedes elegir entre "Sistema de archivos" o "Memcached".
  • Instala un módulo de caché de páginas como Page Cache o NitroPack para PrestaShop.

6. Mantenimiento programado: la clave del éxito

No sirve de nada optimizar un día y olvidarte durante seis meses. La MySQL optimización es un proceso continuo. Te recomiendo que configures un plan de mantenimiento:

  • Semanal: borra comentarios spam, transients caducados y sesiones antiguas en PrestaShop.
  • Mensual: ejecuta el comando OPTIMIZE TABLE en todas las tablas y revisa los informes de rendimiento.
  • Trimestral: revisa los índices y ajusta la configuración de MySQL si el tráfico ha cambiado.

Puedes automatizar todo esto con un cron job. En Syspanel, busca la sección de "Tareas programadas" y crea un script que ejecute las consultas de limpieza. Si no te ves capaz, los plugins de WordPress (como WP-Optimize) tienen su propio programador.

7. Preguntas frecuentes (FAQ)

¿Con qué frecuencia debo optimizar la base de datos?

Depende del tamaño y del tráfico. Para una web pequeña, una vez al mes es suficiente. Para una tienda con mucho movimiento, cada 15 días. Si notas que las consultas se ralentizan, hazlo antes.

¿Puedo optimizar MySQL sin acceso al servidor?

Sí. Con phpMyAdmin (o la herramienta de Syspanel) puedes ejecutar la mayoría de las optimizaciones. Los plugins y módulos también hacen gran parte del trabajo. Solo necesitas acceso al servidor para tocar el archivo my.cnf.

¿Qué es mejor para el SEO, WordPress o PrestaShop?

Ambos pueden tener un rendimiento excelente si están bien optimizados. El SEO depende más de la velocidad de carga, el contenido y la estructura de enlaces que de la plataforma en sí. Lo importante es que la base de datos no sea un cuello de botella.

¿La optimización de MySQL afecta a la seguridad?

No directamente. Pero una base de datos limpia y optimizada reduce la superficie de ataque y facilita la detección de archivos maliciosos. Eso sí, recuerda cambiar las contraseñas de acceso a la base de datos periódicamente.

¿Puedo usar Syspanel para todo esto?

Sí. Syspanel (acceso por puerto 2106) incluye herramientas de gestión de bases de datos, copias de seguridad y tareas programadas que cubren el 90% de lo que necesitas. Es una opción muy cómoda si no quieres pelear con la línea de comandos.

Conclusión: la optimización de MySQL es un trabajo continuo

Mejorar el rendimiento de MySQL en WordPress y PrestaShop no es un truco mágico, sino una combinación de buenas prácticas: limpieza periódica, índices adecuados, configuración del servidor y caché. Empieza por lo más sencillo (limpiar y optimizar tablas) y ve subiendo el nivel a medida que te sientas más cómodo.

Verás cómo la velocidad de carga mejora notablemente, y con ello, la satisfacción de tus usuarios y tu posicionamiento en Google. Si tienes dudas, deja un comentario o consulta la documentación de tu panel de control. ¡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