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

Cómo optimizar bases de datos MySQL para acelerar WordPress y PrestaShop

Actualizado el 6 de mayo de 2026

¿Por qué tu WordPress o PrestaShop van lentos? El problema puede estar en la base de datos

Si tu tienda online o tu blog van lentos, lo primero que piensas es en la velocidad del servidor o en el tamaño de las imágenes. Pero hay un culpable silencioso que muchas veces ignoramos: la base de datos MySQL. Con el tiempo, esta se llena de basura, registros obsoletos, revisiones antiguas y tablas fragmentadas que hacen que cada consulta tarde milisegundos de más. Y esos milisegundos, multiplicados por cientos de visitantes, se convierten en segundos de carga.

La buena noticia es que optimizar la base de datos MySQL no es una tarea de expertos. Con una guía clara y las herramientas adecuadas, cualquier persona puede hacerlo sin romper nada. En este artículo te voy a enseñar, paso a paso, cómo acelerar WordPress con base de datos optimizada y cómo optimizar MySQL para PrestaShop, además de darte trucos para limpiar tablas MySQL y crear índices MySQL para rendimiento.

Vamos a ello, sin tecnicismos innecesarios y con explicaciones que se entienden a la primera.


1. Lo primero: entiende qué es MySQL y por qué se llena

MySQL es el motor de base de datos más usado en el mundo. Tanto WordPress como PrestaShop lo utilizan para guardar todo: entradas, páginas, comentarios, pedidos, clientes, productos, configuraciones... Cada vez que alguien visita tu web, el servidor hace cientos de consultas a MySQL para mostrar el contenido.

Con el uso diario, esa base de datos se convierte en un cajón desordenado. Se acumulan:

  • Revisiones de entradas (cada vez que guardas un borrador, se guarda una copia completa).
  • Transients caducados (datos temporales que ya no sirven).
  • Spam y comentarios en papelera.
  • Tablas fragmentadas (espacio desperdiciado por borrados y actualizaciones).
  • Índices desordenados que hacen que las búsquedas sean lentas.

Todo esto hace que las consultas tarden más. Y una consulta lenta significa una página lenta.

[INFO] No necesitas ser un administrador de sistemas para optimizar MySQL. Con acceso a phpMyAdmin (o la herramienta que tu hosting te ofrezca) y un poco de paciencia, puedes hacerlo tú mismo.


2. Antes de tocar nada: haz una copia de seguridad

Esta regla es sagrada. Antes de limpiar tablas MySQL o modificar cualquier estructura, tienes que hacer una copia de seguridad completa de tu base de datos. Si algo sale mal, podrás restaurar todo en minutos.

Cómo hacer una copia de seguridad en phpMyAdmin

  1. Entra a phpMyAdmin desde el panel de tu hosting (cPanel, Syspanel, Plesk, etc.).
  2. Selecciona tu base de datos en el menú lateral izquierdo.
  3. Haz clic en la pestaña Exportar.
  4. Elige el método Rápido y formato SQL.
  5. Pulsa Continuar y descarga el archivo.

[WARNING] Si tu hosting usa Syspanel (antes conocido como HestiaCP), recuerda que el acceso al panel es a través del puerto 2106. Por ejemplo: https://tudominio.com:2106. Allí encontrarás la sección de bases de datos para acceder a phpMyAdmin.

Guarda ese archivo en un lugar seguro, preferiblemente en tu ordenador y en la nube. Nunca se sabe cuándo lo vas a necesitar.


3. Optimizar la base de datos de WordPress: los pasos básicos

Si tu web es WordPress, hay una forma muy sencilla de empezar a acelerar WordPress con base de datos optimizada: usando un plugin. Pero antes de eso, te voy a enseñar a hacerlo manualmente, porque así entiendes lo que estás haciendo y no dependes de nadie.

3.1. Limpia las revisiones de entradas

Cada vez que guardas un borrador, WordPress guarda una revisión completa. Con el tiempo, puedes tener cientos de copias de un mismo artículo. Esto ocupa espacio y hace que la tabla wp_posts sea enorme.

Para limpiarlas, ejecuta esta consulta SQL en phpMyAdmin:

DELETE FROM wp_posts WHERE post_type = 'revision';

[TIP] Reemplaza wp_ por el prefijo que uses en tu instalación. Si no sabes cuál es, míralo en el archivo wp-config.php o en la propia base de datos.

3.2. Elimina los transients caducados

Los transients son datos temporales que WordPress guarda en la base de datos para acelerar ciertas funciones. Pero muchos caducan y nunca se borran. Para eliminarlos:

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

3.3. Vacía la papelera y el spam de comentarios

Los comentarios en papelera y en spam siguen ocupando espacio. Bórralos definitivamente:

DELETE FROM wp_comments WHERE comment_approved = 'spam' OR comment_approved = 'trash';

3.4. Optimiza las tablas

Una vez limpias, toca optimizar las tablas para eliminar la fragmentación. En phpMyAdmin, selecciona todas las tablas (clic en "Seleccionar todo") y en el desplegable elige Optimizar tabla. Esto reconstruye los índices y libera espacio.

[INFO] Esta operación es segura y no borra ningún dato. Solo reorganiza la información para que las consultas sean más rápidas.


4. Optimizar MySQL para PrestaShop: lo que necesitas saber

PrestaShop es más complejo que WordPress. Tiene muchas más tablas (más de 300) y cada una acumula datos de pedidos, clientes, productos, combinaciones, etc. Por eso, optimizar MySQL para PrestaShop requiere un enfoque un poco distinto.

4.1. Activa el modo de mantenimiento

Antes de tocar nada, pon tu tienda en modo mantenimiento. Así evitas que los clientes vean errores mientras trabajas. Lo encuentras en Parámetros Avanzados > Mantenimiento.

4.2. Limpia las tablas de logs y sesiones

PrestaShop guarda muchísimos logs y sesiones antiguas. Las tablas ps_log y ps_connections pueden crecer sin control. Puedes vaciarlas con:

TRUNCATE TABLE ps_log;
TRUNCATE TABLE ps_connections;
TRUNCATE TABLE ps_connections_page;
TRUNCATE TABLE ps_guest;

[WARNING] Asegúrate de que el prefijo de tus tablas es ps_. Si no, ajústalo. Y no borres ps_customer ni ps_orders, ¡ahí está tu negocio!

4.3. Elimina los productos y combinaciones obsoletas

Si tienes productos desactivados o combinaciones que ya no usas, elimínalos desde el panel de administración. No los dejes en la base de datos, porque siguen ocupando espacio y ralentizando las consultas.

4.4. Optimiza las tablas desde phpMyAdmin

Igual que en WordPress, selecciona todas las tablas de tu base de datos de PrestaShop y elige Optimizar tabla. Esto es especialmente importante en tablas grandes como ps_product, ps_stock_available o ps_order_detail.


5. Índices MySQL para rendimiento: la clave que muchos ignoran

Los índices son como el índice de un libro: te permiten encontrar la información sin tener que leer todas las páginas. Sin índices, MySQL tiene que recorrer toda la tabla para encontrar un registro. Con índices, va directo al dato.

¿Cómo saber si necesitas índices?

Ejecuta esta consulta en phpMyAdmin:

SHOW INDEX FROM wp_posts;

Verás una lista de índices existentes. Si alguna columna que usas mucho en consultas (como post_status, post_date o comment_post_ID) no tiene índice, es candidata a tenerlo.

Cómo crear un índice en MySQL

Crear un índice es muy sencillo. Por ejemplo, si quieres acelerar las consultas por estado de publicación en WordPress:

ALTER TABLE wp_posts ADD INDEX idx_post_status (post_status);

En PrestaShop, un índice útil sería sobre la columna id_product en la tabla ps_stock_available:

ALTER TABLE ps_stock_available ADD INDEX idx_id_product (id_product);

[TIP] No crees índices en todas las columnas. Demasiados índices también ralentizan las escrituras (insertar, actualizar, borrar). Crea solo los que realmente necesites para las consultas frecuentes.

¿Cómo saber qué consultas son lentas?

Activa el log de consultas lentas de MySQL. En cPanel o Syspanel, busca la sección de MySQL y activa slow_query_log. Después de unos días, revisa el archivo de log y verás qué consultas tardan más de 1 segundo. Esas son las que necesitan índices.


6. Herramientas automáticas para optimizar la base de datos

Si no quieres hacerlo a mano, hay plugins y herramientas que lo hacen por ti.

Para WordPress: WP-Optimize

Este plugin es perfecto para optimizar base de datos MySQL de forma automática. Te permite:

  • Limpiar revisiones, transients y spam.
  • Optimizar tablas con un clic.
  • Programar limpiezas automáticas.
  • Comprimir imágenes (extra).

Para PrestaShop: PrestaShop Cleaner

Es un módulo de pago que limpia tablas de logs, sesiones, conexiones antiguas y mucho más. Muy útil si tu tienda lleva años funcionando.

[INFO] Estos plugins no hacen magia. Son herramientas que ejecutan consultas SQL como las que te he enseñado. Pero te ahorran tiempo y evitan errores.


7. Mantenimiento periódico: la clave para que no vuelva a pasar

Optimizar una vez no basta. La base de datos se vuelve a ensuciar con el uso. Por eso, es recomendable hacer un mantenimiento mensual.

Plan de mantenimiento recomendado

  1. Semanalmente: activa la limpieza automática de transients en WordPress (puedes usar WP-Optimize).
  2. Mensualmente: ejecuta las consultas de limpieza que te he enseñado y optimiza las tablas.
  3. Trimestralmente: revisa los índices y el log de consultas lentas.
  4. Anualmente: haz una copia de seguridad completa y considera migrar a un hosting con MySQL más rápido (como MariaDB, que es un clon mejorado).

[TIP] En Syspanel (puerto 2106), puedes programar copias de seguridad automáticas de tus bases de datos. Así no dependes de acordarte de hacerlas manualmente.


8. Preguntas frecuentes (FAQ)

¿Es seguro optimizar la base de datos MySQL?

Sí, siempre y cuando hagas una copia de seguridad antes y sigas los pasos correctos. Las operaciones de limpieza y optimización no borran datos importantes si ejecutas las consultas correctas.

¿Cuánto tarda en notarse la mejora de velocidad?

Depende del tamaño de tu base de datos y de lo sucia que esté. En webs muy descuidadas, la mejora puede ser de varios segundos. En webs medianas, notarás una diferencia de 0.5 a 1 segundo en el tiempo de carga.

¿Cada cuánto debo optimizar?

Idealmente, una vez al mes. Si tu web tiene mucho tráfico o muchas actualizaciones, cada dos semanas.

¿Qué hago si mi base de datos es enorme (más de 1 GB)?

Si tu base de datos supera 1 GB, te recomiendo contratar un servicio de optimización profesional o migrar a un hosting gestionado. Las bases de datos muy grandes requieren técnicas avanzadas como particionado de tablas o usar motores de almacenamiento alternativos.

¿Los plugins de caché hacen lo mismo que optimizar la base de datos?

No. Los plugins de caché guardan una copia estática de tus páginas para servirlas más rápido. Pero no limpian la base de datos. Las dos cosas son complementarias.

¿Puedo optimizar la base de datos desde Syspanel?

Sí. En Syspanel (puerto 2106) tienes acceso a phpMyAdmin desde la sección de bases de datos. Allí puedes ejecutar todas las consultas que te he enseñado.


9. Errores comunes que debes evitar

  • No hacer copia de seguridad: el error más grave. Una consulta mal escrita puede borrar datos irreparables.
  • Ejecutar consultas sin saber qué hacen: si no entiendes una consulta, no la ejecutes. Mejor pregunta o busca ayuda.
  • Optimizar tablas muy grandes en horas punta: hazlo en horas de bajo tráfico, como de madrugada.
  • Crear demasiados índices: ralentiza las escrituras. Menos es más.
  • Olvidar el prefijo de las tablas: si tu WordPress usa wp_ y ejecutas una consulta con wp_, no hará nada. Ajusta siempre el prefijo.

10. Conclusión: tu base de datos es el motor de tu web

Optimizar la base de datos MySQL es una de las tareas de mantenimiento más rentables que puedes hacer. No requiere conocimientos avanzados, no cuesta dinero (salvo que quieras plugins premium) y los resultados se notan de inmediato.

Ya sea que tengas un blog en WordPress o una tienda en PrestaShop, optimizar la base de datos MySQL te ayudará a acelerar WordPress o acelerar PrestaShop sin cambiar de hosting ni comprar más recursos. Solo necesitas dedicarle una hora al mes.

Empieza hoy mismo: haz una copia de seguridad, ejecuta las consultas de limpieza, optimiza las tablas y crea los índices que te he recomendado. Tu web (y tus visitantes) te lo agradecerán.

Y recuerda: si usas Syspanel, el acceso es por el puerto 2106. Ahí tienes todo lo que necesitas para gestionar tus bases de datos de forma segura y profesional.

¡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