En el mundo del ecommerce, es normal que un sitio WordPress/WooCommerce crezca con el tiempo. Lo que no siempre se ve a simple vista es cómo ese crecimiento también afecta a la base de datos, los recursos del servidor y, en consecuencia, el rendimiento del sitio.
Este es el caso de un proyecto reciente donde un sitio de WooCommerce comenzó a presentar:
- Caídas frecuentes
- Suspensiones automáticas del hosting
- Lentitud extrema
- Errores 500 y límites de CPU sobrepasados
Después de un análisis completo, identificamos dos causas principales:
- Tráfico anormalmente alto proveniente de bots y scrapers, saturando el servidor.
- Una base de datos que había crecido de forma descontrolada, superando los 3 GB.
Este artículo documenta los pasos aplicados y ofrece un mapa claro para emprendedores y equipos técnicos que gestionan su propio WordPress.
🚨 Problema 1: Tráfico excesivo por bots no deseados
El hosting reportó miles de solicitudes repetidas desde diferentes IPs, muchas de ellas asociadas a:
- Bots de análisis de backlinks
- Scrapers de precios / productos
- Motores de indexación agresivos
- Tráfico internacional no relevante
Estos bots provocaban picos de CPU y MySQL, hasta el punto de que el hosting suspendía el sitio para proteger la estabilidad del servidor.
✅ Solución aplicada
Se implementó una estrategia en varias capas:
1. Bloqueo de bots por User-Agent en .htaccess
Se añadieron reglas para bloquear bots no esenciales como SERanking, Ahrefs, MJ12bot, etc.

2. Protección de endpoints delicados
Particularmente /wp-json/, que estaba siendo consultado miles de veces por bots desconocidos.
3. Mantenimiento de accesos legítimos
Se aseguraron excepciones para:
- API de Meta (Pixel / CAPI)
- Klaviyo
- Integraciones de e-commerce
- AJAX interno de WordPress
4. Bloqueo geográfico
Se desactivó el tráfico proveniente de regiones con alto volumen de scrapers.
El resultado fue una reducción inmediata del 70% del tráfico no humano.
🧨 Problema 2: Base de datos inflada (más de 3.6 GB)
Al inspeccionar la base de datos, se encontró que el tamaño era desproporcionado para el tipo de sitio.
Las tablas más grandes estaban asociadas a:
- Logs automáticos
- Registros internos del hosting
- Registros del Action Scheduler de WooCommerce
- Datos obsoletos y temporales
Estos valores se habían acumulado durante meses o incluso años, y no eran necesarios para el funcionamiento normal del sitio.
📌 Ejemplos de tablas que crecieron de forma descontrolada:
- Logs de seguridad
- Logs de visitantes
- Registros del Action Scheduler (tareas de integración, actualizaciones, correos, webhooks)
- Información residual de plugins desactivados
❗ Importante:
En ningún momento se eliminaron datos de productos, pedidos, usuarios, configuraciones ni contenido.

🛠️ Limpieza profunda y optimización
La limpieza se realizó directamente desde la base de datos, ya que el frontend estaba inaccesible debido a la suspensión del hosting.
⭐ Acciones realizadas:
1. Limpieza segura de tablas de logs
Se vaciaron únicamente las tablas que almacenan eventos temporales, NO datos del negocio.
2. Eliminación de registros viejos del Action Scheduler
Estos registros suelen acumular cientos de miles de filas.
3. Optimización de tablas
Se aplicó OPTIMIZE TABLE para:
- Compactar espacio
- Reducir fragmentación
- Mejorar tiempos de consulta
✔️ Resultado final:
La base de datos pasó de 3.6 GB → 322 MB
Una reducción del 90% sin pérdida de información operativa.
🚀 Resultados después de la intervención
Tras la optimización:
🔧 Rendimiento mejoró notablemente
- Menor tiempo de carga
- Menor consumo de CPU
- Base de datos más ligera
- Panel de WordPress accesible de nuevo
🌐 El hosting dejó de suspender el sitio
Los procesos dejaron de saturar MySQL y el servidor recuperó estabilidad.
📦 Ningún dato importante se perdió
- Productos intactos
- Pedidos conservados
- Usuarios y configuraciones sin cambios
- Plugins funcionando normalmente
🛡️ La API y el tracking siguen funcionando
Se mantuvo compatibilidad con:
- Meta Pixel / CAPI
- Klaviyo
- WooCommerce REST API
- Integraciones externas
📘 Aprendizajes para emprendedores y equipos técnicos
Este caso nos deja lecciones valiosas para cualquier persona que administre WordPress:
1. WordPress necesita mantenimiento, igual que un vehículo
Muchos emprendedores no saben que su sitio acumula información que debe ser limpiada regularmente.
2. WooCommerce genera miles de registros automáticamente
El Action Scheduler, logs de transacciones, webhooks y automatizaciones pueden crecer descontroladamente.
3. Los bots pueden afectar tanto como los usuarios reales
Bloquear tráfico no humano puede salvar recursos del servidor.
4. Optimizar la base de datos restaura el rendimiento al instante
Una limpieza profunda puede reducir la carga de MySQL entre un 70% y 90%.
5. No hay que temerle al mantenimiento técnico
Con una estrategia adecuada, es posible:
- Limpiar
- Optimizar
- Mejorar
… sin afectar el funcionamiento del negocio.
Este caso de éxito demuestra que un sitio saturado, lento y suspendido por el hosting no está perdido.
Con una combinación de:
- Bloqueo inteligente de bots
- Optimización de la API
- Limpieza profunda de la base de datos
… es posible devolverlo a la vida y dejarlo más rápido y estable que antes.
El mantenimiento técnico no es un lujo, es parte fundamental de la salud de cualquier negocio digital.
