Por que la base de datos de WordPress se vuelve lenta con el tiempo
WordPress guarda en la base de datos mucho mas que el contenido visible del sitio. Cada vez que editas un post, se guarda una revision. Cada operacion temporal del sistema crea registros llamados transients. Los comentarios de spam se acumulan. Los carritos abandonados de WooCommerce quedan sin limpiar. Con el tiempo, una base de datos de WordPress puede crecer de forma desmedida y volverse significativamente mas lenta.
Elementos que engordan la base de datos de WordPress
| Elemento | Tabla MySQL | Impacto en rendimiento |
|---|---|---|
| Revisiones de posts | wp_posts (post_type = revision) | Alto: pueden ser miles en blogs activos |
| Transients expirados | wp_options | Medio: ralentizan las consultas a wp_options |
| Borradores automaticos | wp_posts | Bajo pero acumulable |
| Spam en comentarios | wp_comments | Medio en sitios con mucho spam |
| Metadatos de posts eliminados | wp_postmeta | Medio: registros huerfanos |
| Sesiones de usuarios expiradas | wp_options, wp_usermeta | Bajo-medio |
Como limpiar la base de datos con WP-Optimize
- Instala el plugin WP-Optimize desde el repositorio oficial de WordPress.
- En WordPress, ve a WP-Optimize > Base de datos.
- Marca las opciones de limpieza que deseas ejecutar: revisiones, transients, spam, borradores.
- Antes de ejecutar, revisa cuantos registros se eliminarán en cada categoria.
- Haz clic en Ejecutar todas las optimizaciones seleccionadas.
Limitar las revisiones para que no vuelvan a acumularse
Agrega esta linea al wp-config.php para limitar el numero de revisiones que WordPress guarda por post:
// Limitar a 3 revisiones por post (0 para desactivar)
define('WP_POST_REVISIONS', 3);Limpieza manual de transients expirados via phpMyAdmin
-- Ejecutar en phpMyAdmin > pestaña SQL: DELETE FROM wp_options WHERE option_name LIKE '%_transient_%' AND option_name LIKE '%timeout%';