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

Cómo optimizar una base de datos MySQL en WordPress y PrestaShop

Actualizado el 13 de noviembre de 2025

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

Piensa en tu base de datos como el almacén central de tu tienda o blog. Cada vez que un visitante entra, el sistema va a ese almacén a buscar productos, textos, configuraciones y usuarios. Si el almacén está lleno de cajas vacías, papeles rotos y muebles viejos que ya no usas, cada búsqueda se vuelve más lenta y pesada. Eso es exactamente lo que ocurre con el rendimiento MySQL cuando no se realiza un mantenimiento periódico.

Tanto WordPress como PrestaShop son sistemas de gestión de contenidos (CMS) muy potentes, pero generan muchísima información residual. Cada revisión de producto, cada sesión de usuario, cada comentario spam o cada borrador automático deja un registro en la base de datos. Con el tiempo, esos registros se acumulan y provocan que las consultas tarden más de lo necesario. El resultado: una web lenta, que penaliza tu posicionamiento SEO y frustra a tus visitantes.

La buena noticia es que optimizar una base de datos no requiere ser un ingeniero informático. Con unas pocas herramientas y siguiendo una rutina sencilla, puedes mantener tu almacén limpio y ordenado. En esta guía te explicaré paso a paso cómo hacerlo tanto en WordPress como en PrestaShop, con consejos prácticos que podrás aplicar incluso si nunca has tocado un phpMyAdmin.


Antes de empezar: la regla de oro de cualquier optimización

Antes de tocar nada, necesitas entender una regla fundamental: siempre debes hacer una copia de seguridad completa de tu base de datos. Da igual si solo vas a eliminar unas pocas filas o a ejecutar una consulta compleja. Un error tipográfico en una sentencia SQL puede borrar información crítica de tu negocio.

[WARNING] No se te ocurra optimizar tu base de datos sin tener una copia de seguridad reciente. Aunque las herramientas que te recomendaré son seguras, siempre existe un margen de error. Crea una copia manual desde el panel de control de tu hosting o usando plugins como UpdraftPlus (para WordPress) o el propio sistema de copias de PrestaShop.

¿Cómo hacer una copia manual? Si tu hosting usa cPanel o Syspanel, busca la sección de "Gestor de bases de datos" o "phpMyAdmin". Dentro, selecciona tu base de datos y haz clic en "Exportar". Elige el método rápido y descarga el archivo SQL. Guárdalo en un lugar seguro, preferiblemente en tu ordenador y en la nube.


Optimizar MySQL en WordPress: limpieza profunda y mantenimiento

Optimizar mysql wordpress es probablemente una de las tareas de mantenimiento más solicitadas, y con razón. WordPress es un gran generador de datos basura. Vamos a ver cómo ponerle remedio.

1. Identifica qué tablas son las que más pesan

Accede a phpMyAdmin desde tu panel de control (cPanel, Syspanel, Plesk, etc.). Selecciona tu base de datos de WordPress. Verás una lista de tablas con prefijos como wp_ (o el que hayas configurado). Haz clic en la pestaña "Estructura" y ordena las tablas por tamaño. Las que más espacio ocupan suelen ser:

  • wp_options: guarda la configuración del sitio, pero también acumula transients (datos temporales).
  • wp_posts: aquí viven todas tus entradas, páginas, revisiones y también los borradores autoguardados.
  • wp_postmeta: metadatos asociados a cada entrada.
  • wp_comments y wp_commentmeta: comentarios y sus metadatos.
  • wp_term_relationships: relaciones entre taxonomías y contenido.

2. Limpiar revisiones y borradores antiguos

Cada vez que editas una entrada, WordPress guarda una revisión automática. Si has editado un artículo 30 veces, tendrás 30 copias en la base de datos. Eso es un desperdicio enorme de espacio.

Puedes eliminar las revisiones de dos formas:

Opción A - Manualmente desde phpMyAdmin:

Ejecuta esta consulta SQL (cambia wp_ por tu prefijo real):

DELETE FROM wp_posts WHERE post_type = "revision";

[WARNING] Esta consulta borra todas las revisiones de todas las entradas. Si quieres conservar las últimas de cada artículo, necesitas una consulta más compleja. Te recomiendo solo borrar aquellas de más de 30 días si eres muy cuidadoso.

Opción B - Usando un plugin:

Instala un plugin como "WP-Optimize" o "Advanced Database Cleaner". Estos plugins te permiten programar limpiezas automáticas y ver qué ocupa espacio. La ventaja es que no necesitas tocar SQL.

3. Elimina transients y opciones obsoletas

Los transients son datos temporales que WordPress guarda en wp_options con una fecha de caducidad. Muchos plugins no los limpian correctamente y quedan ahí para siempre. Puedes eliminarlos con esta consulta:

DELETE FROM wp_options WHERE option_name LIKE '_transient_%' OR option_name LIKE '_site_transient_%';

También puedes buscar opciones huérfanas de plugins que ya no usas. Revisa la tabla wp_options y busca nombres de opciones que no reconozcas. Si llevas mucho tiempo con el mismo WordPress, encontrarás decenas de restos de plugins desinstalados.

4. Limpia comentarios spam y pendientes

Los comentarios spam no solo son molestos, sino que llenan tu base de datos. WordPress los detecta y los marca como "spam", pero no los elimina automáticamente. Puedes borrarlos desde el panel de administración, pero si tienes miles, es más rápido con SQL:

DELETE FROM wp_comments WHERE comment_approved = 'spam';

También puedes eliminar los comentarios que están como "pendientes" desde hace meses, ya que probablemente nunca los aprobarás.

5. Optimiza las tablas después de limpiar

Una vez que has eliminado datos, es crucial optimizar las tablas para que MySQL reorganice el espacio. En phpMyAdmin, selecciona todas las tablas de tu base de datos y en el menú desplegable elige "Optimizar tablas". Esto ejecutará un comando OPTIMIZE TABLE que compacta los archivos y mejora el rendimiento MySQL.


Optimizar base de datos PrestaShop: mantenimiento específico

Optimizar base de datos prestashop tiene sus particularidades. PrestaShop es más complejo en cuanto a tablas y genera mucho más historial de pedidos, sesiones y búsquedas. Vamos a ver qué puedes hacer.

1. Limpia las sesiones antiguas

Las sesiones de usuarios que visitan tu tienda se guardan en la tabla ps_connections y ps_connections_page. Cada visita, aunque sea de un bot, genera una fila. Con el tiempo, esta tabla puede crecer exponencialmente.

Desde el panel de administración de PrestaShop, ve a "Parámetros avanzados" → "Rendimiento". Ahí encontrarás una opción para "Vaciar las sesiones" de forma manual. También puedes programar su limpieza automática.

Si prefieres hacerlo por SQL, puedes ejecutar:

DELETE FROM ps_connections WHERE date_add < DATE_SUB(NOW(), INTERVAL 30 DAY);

2. Elimina los registros de búsqueda

PrestaShop guarda todas las búsquedas que los usuarios realizan en tu tienda en la tabla ps_search_word y ps_search_index. Esto se usa para sugerencias, pero acumula miles de registros inútiles. Puedes vaciarlas con:

TRUNCATE TABLE ps_search_word;
TRUNCATE TABLE ps_search_index;

[TIP] Si tu tienda tiene un volumen alto de búsquedas, considera desactivar el "Historial de búsquedas" desde el panel de administración. Esto evitará que se siga llenando.

3. Limpia las tablas de logs y errores

PrestaShop registra todos los errores y logs del sistema en tablas como ps_log y ps_activity. Estos registros son útiles para depurar, pero no necesitas guardarlos para siempre. Puedes vaciarlos con:

TRUNCATE TABLE ps_log;
TRUNCATE TABLE ps_activity;

4. Revisa las tablas de pedidos y carritos abandonados

Los carritos abandonados se guardan en ps_cart y ps_cart_product. Si tienes muchos, pueden ralentizar las consultas de pedidos. Puedes eliminar los que tengan más de 30 días de antigüedad y que estén en estado "abandonado".

DELETE FROM ps_cart WHERE date_add < DATE_SUB(NOW(), INTERVAL 30 DAY) AND id_cart NOT IN (SELECT id_cart FROM ps_orders);

[WARNING] Esta consulta borra carritos que no han generado un pedido. Si usas alguna herramienta de marketing para recuperar carritos abandonados, no la ejecutes sin antes exportar esos datos.

5. Optimiza las tablas de PrestaShop

Al igual que en WordPress, después de la limpieza debes optimizar las tablas. En phpMyAdmin selecciona todas las tablas con prefijo ps_ y elige "Optimizar tablas". También puedes hacerlo desde el panel de administración de PrestaShop en "Parámetros avanzados" → "Base de datos", donde encontrarás un enlace directo para optimizar.


Herramientas y buenas prácticas para el mantenimiento continuo

La optimización no debe ser una tarea puntual. Deberías establecer una rutina mensual o trimestral para mantener el rendimiento MySQL al máximo. Aquí tienes algunas recomendaciones.

1. Usa plugins especializados

Para WordPress, además de los mencionados, puedes usar "WP Rocket" (aunque es de pago) o "LiteSpeed Cache" que incluye herramientas de limpieza de base de datos. Para PrestaShop, existen módulos como "Advanced Database Optimizer" que automatizan todo el proceso.

2. Configura un cron job de limpieza

Tanto WordPress como PrestaShop permiten programar tareas. Puedes configurar un cron job que ejecute las consultas de limpieza que has visto, pero solo si te sientes cómodo con SQL. Si no, los plugins/módulos suelen tener su propio sistema de programación.

3. Monitorea el tamaño de tu base de datos

Cada mes, revisa el tamaño de tu base de datos desde phpMyAdmin o el panel de tu hosting. Si notas un crecimiento anormal, es señal de que algo no se está limpiando bien. Una base de datos de WordPress no debería superar los 500 MB en un sitio estándar, mientras que PrestaShop puede crecer más dependiendo del número de pedidos.

4. Activa la compresión de tablas (si tu hosting lo permite)

Algunos servidores y paneles como Syspanel permiten activar la compresión InnoDB. Esto reduce el espacio en disco y puede mejorar el rendimiento MySQL en tablas muy grandes. Consulta con tu proveedor de hosting si es posible.


Preguntas frecuentes (FAQ)

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

Depende del tráfico y de la actividad de tu sitio. Como mínimo, una vez al mes. Si publicas contenido a diario o tienes una tienda con muchos pedidos, cada semana sería lo ideal.

¿Es peligroso ejecutar consultas SQL manualmente?

Puede serlo si no sabes lo que haces. Siempre haz una copia de seguridad antes y ejecuta las consultas en un entorno de prueba si es posible. Los plugins son más seguros para principiantes.

¿Optimizar la base de datos mejora el SEO?

Sí, indirectamente. Una base de datos optimizada reduce el tiempo de carga de tu web, y la velocidad de carga es un factor de posicionamiento. Además, evitas errores de servidor y caídas.

¿Puedo usar Syspanel para acceder a phpMyAdmin?

Sí. En Syspanel, que es el panel de control de tu hosting (accesible en el puerto 2106), encontrarás la sección de "Bases de datos" donde puedes gestionar tus bases de datos y acceder a phpMyAdmin con un solo clic.

¿Qué hago si mi base de datos es demasiado grande (más de 2 GB)?

Si superas los 2 GB, considera limpiar a fondo, pero también revisa si tienes tablas de logs de plugins que no usas. Si sigue creciendo, puede que necesites migrar a un hosting con más recursos o contratar un servicio de optimización profesional.


Conclusión: la constancia es la clave

Optimizar mysql wordpress y optimizar base de datos prestashop no es una tarea complicada, pero requiere constancia. Si dedicas 20 minutos al mes a limpiar y optimizar tus tablas, notarás una mejora significativa en la velocidad de tu web y en la experiencia de tus usuarios. Además, reducirás el riesgo de errores críticos y facilitarás las copias de seguridad.

[INFO] Recuerda que la optimización de la base de datos es solo una parte del rendimiento de tu web. Combínala con un buen sistema de caché, imágenes comprimidas y un hosting de calidad. Todo suma.

Ahora que ya sabes cómo hacerlo, te animo a que lo pongas en práctica. Empieza por lo más sencillo: instala un plugin de limpieza o ejecuta una consulta de eliminación de revisiones. Verás que en pocos minutos tu base de datos respira más ligera. Y si tienes dudas, siempre puedes volver a esta guía o contactar con tu soporte técnico. ¡Buena suerte con tu optimización!

¿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