Cómo limpiar y optimizar la base de datos de tu WordPress

Tu base de datos de WordPress es como un archivador que almacena todo el contenido de tu web, incluidas publicaciones, páginas, comentarios, revisiones y comentarios de spam, así como la configuración de los temas y plugins. Entonces, si has estado usando WordPress por un tiempo, es probable que tu base de datos esté abarrotada y llena de tablas que ya no necesitas.

Estos datos innecesarios conducen al agrandamiento de la base de datos (¿realmente necesitas guardar la configuración de los temas que eliminaste hace años?), por lo que limpiar tu base de datos no solo ayudara a acelerar tu sitio para que se cargue más rápido, sino que también podras liberar espacio significativo en tu base de datos para que se ejecute de manera más eficiente.

Con WordPress, hay diferentes maneras de abordar la optimización de la base de datos. En este articulo, veremos algunas consultas mySQL que se pueden usar para limpiar la base de datos desde phpMyAdmin, así como algunos excelentes plugins que hacen que la tarea sea aún más fácil.

Nota: Antes de realizar cambios en tu base de datos, te recomiendo que primero hagas una copia de seguridad de tu sitio. Ya sea que estés haciendo pequeños o grandes cambios en tu sitio, tener una copia de seguridad lista para restaurar; te dará tranquilidad por si algo sale mal. Un plugin como BlogVault es ideal para realizar copias de seguridad de tu sitio.

  • Optimizando tu base de datos de WordPress con phpmyadmin:

Hay varias formas de ejecutar consultas SQL en tu base de datos, si dispones de cPanel en tu servidor, la forma mas facil de hacerlo es mediante phpMyAdmin.

Para acceder a phpmyadmin, inicia sesión en cPanel y haz clic en «phpmyadmin» en la sección «Bases de datos».

Una vez que estés en phpmyadmin, en el margen izquierdo verás las bases de datos de tu sitio web. Haz clic en el nombre de la base de datos que deseas limpiar y luego haz clic en la pestaña «SQL»:

La sección SQL en phpmyadmin es donde puedes ingresar comandos SQL y luego presionar «Ir» para ejecutarlos.

Es importante tener en cuenta que este artículo usa el prefijo de tabla predeterminado wp_, así que si tienes un prefijo diferente en tu base de datos, asegurate de cambiarlo en las lineas de comando que ejecutes.

Eliminar datos de plugins y post antiguos:

Comencemos por eliminar los datos sobrantes de los plugins que ya no utilizas. La tabla wp_postmeta es donde se almacenan los datos de tus publicaciones, por lo que cuando ejecutes esta consulta estáras matando dos pájaros de un tiro.

DELETE FROM wp_postmeta WHERE meta_key = 'META-KEY-NAME';
Don’t forget to replace META-KEY-NAME

Alli debe colocar el valor que desea borrar.

Eliminar revisiones de publicaciones:

Las revisiones de publicaciones antiguas se acumulan rápidamente, especialmente si tienes autores en tu sitio que constantemente guardan su trabajo durante muchos días. Si deseas eliminar todas las revisiones de publicaciones de tu base de datos de una sola vez, ejecuta la siguiente consulta:

DELETE a,b,c
 FROM wp_posts a
 LEFT JOIN wp_term_relationships b ON ( a.ID = b.object_id)
 LEFT JOIN wp_postmeta c ON ( a.ID = c.post_id )
 LEFT JOIN wp_term_taxonomy d ON ( b.term_taxonomy_id = d.term_taxonomy_id)
 WHERE a.post_type = 'revision'
 AND d.taxonomy != 'link_category';

En esta consulta eliminas todas las revisiones sin pérdida de datos involuntaria, preservando tambien las relaciones entre las tablas.

Eliminar comentarios de SPAM:

Es una tarea rutinaria eliminar comentarios de SPAM en lotes, y en menor medida uno por uno; pero puedes eliminarlos a todos de una vez con esta consulta:

DELETE FROM wp_comments WHERE comment_approved = 'spam';

Eliminar comentarios no aprobados:

Simplemente ejecuta esta consulta para eliminar en masa todos los comentarios no aprobados:

DELETE from wp_comments WHERE comment_approved = '0';

Eliminar tags sin utilizar:

Es fácil que las etiquetas (tags) se acumulen con el tiempo, especialmente si las agregas a las publicaciones (posts) y luego cambias de opinión y las eliminas. Además, las etiquetas han quedado en desuso en los últimos años, ya que muchos bloggers han dejado de usarlas. Esta consulta eliminará todas las etiquetas que no estén asociadas a ninguna publicación.

DELETE FROM wp_terms WHERE term_id IN (SELECT term_id FROM wp_term_taxonomy WHERE count = 0 );
DELETE FROM wp_term_taxonomy WHERE term_id not IN (SELECT term_id FROM wp_terms);
DELETE FROM wp_term_relationships WHERE term_taxonomy_id not IN (SELECT term_taxonomy_id FROM wp_term_taxonomy);

Eliminar shortcodes antiguos:

Al igual que los datos de plugins antiguos, los shortcodes olvidados a menudo permanecen en tu base de datos mucho después de que hayas dejado de usarlos o despues de que hayas eliminado plugins con los que estaban asociados. En lugar de editar publicaciones y páginas manualmente para eliminar shortcodes, ejecuta la siguiente consulta para eliminar todas las instancias de shortcodes en tu sitio.

UPDATE wp_post SET post_content = replace(post_content, '[YOUR-SHORTCODE]', '' ) ;

No te olvides de reemplazar [YOUR-SHORTCODE] con el shortcode no utilizado que desees eliminar.

Elimina Pingbacks y Trackbacks:

Utiliza estas dos consultas para eliminar datos de pingbacks y trackbacks de tu sitio:

DELETE FROM wp_comments WHERE comment_type = ‘pingback’;

DELETE FROM wp_comments WHERE comment_type = ‘trackback’;

Asegúrate de haber deshabilitado los pingbacks y trackbacks antes de ejecutar estas consultas.

Elimina Transients:

Los transients (transitorios) proporcionan una forma de almacenar temporalmente los datos almacenados en caché en la base de datos, dándole un nombre y un período de tiempo después del cual caducará (de ahí el nombre «transitorio») y se eliminará. A veces, los transients configurados por WordPress y los plugins pueden ocupar mucho espacio en su base de datos, estos pueden ser eliminados de forma segura mediante esta consulta:

DELETE FROM wp_options WHERE option_name LIKE ('%\_transient\_%')

Optimizando tablas:

Con pocos clics, podras optimizar rápidamente tus tablas sin tener que instalar ningún plugin.

En phpmyadmin, en la pestaña «Estructura» haz clic en la base de datos que deseas optimizar. Al final de la lista, haz clic en «Verificar todo». En la lista desplegable junto a esta opción, selecciona «Optimizar tabla».

phpMyAdmin comenzará a optimizar automáticamente tu tabla tan pronto como selecciones la opción en la lista desplegable y luego te mostrará el mensaje «Su consulta SQL se ha ejecutado con éxito».

  • Optimizando tu base de datos de WordPress con plugins:

Hay algunos plugins gratuitos y premium disponibles que te pueden ayudar a limpiar tu base de datos de WordPress con un mínimo esfuerzo. Después de probar muchas opciones, WP-Optimize y WP-Sweep, en mi opinión, son los mejores en cuanto a facilidad de uso y logran optimizar bien la base de datos.

WP-Optimize:

Con más de 600,000 instalaciones activas, WP-Optimize es el plugin de optimización de bases de datos más popular para WordPress. Es amigable para el usuario, simplemente haz clic en «Ejecutar optimización» que se encuentra junto a las demas opciones de limpieza.

La pestaña «Información de la tabla» muestra todas las tablas de tu base de datos junto con su tamaño. La pantalla también te indica el tamaño total de la base de datos y tambien te muestra cuánto espacio total te puedes ahorrar teniendo instalado este plugin.

En la pestaña «Configuración», puedes elegir programar la optimización de la base de datos para que se ejecute automáticamente cada semana, quincena o mes, o incluso que efectue todos los cambios por vos.

En general, este es un plugin simple de usar. Solo recuerda hacer una copia de seguridad de tu sitio antes de usarlo.

WP-Sweep:

WP-Sweep está ganando seguidores rapidamente (actualmente se encuentra en 50.000 instalaciones activas) porque fue desarrollado por Lester Chan, un desarrollador popular de WordPress.

Cuando instales el plugin, ve a «Herramientas> Sweep» para acceder a la configuración. El plugin tiene una interfaz intuitiva que muestra un informe de la cantidad de datos innecesarios que hay en tu base de datos. Se divide en diferentes secciones: publicaciones, comentarios, usuarios, términos, opciones y optimizacion de tablas.

Cuando hagas clic en «Sweep» al lado de un post, el plugin se pone a trabajar optimizando tu base de datos para esa entrada. Si deseas barrer toda tu base de datos, simplemente has clic en “Sweep All” en la parte inferior de la página.

A diferencia de WP-Optimize, WP-Sweet utiliza las funciones de eliminación de WordPress tanto como sea posible para limpiar tu base de datos en lugar de ejecutar consultas MySQL de eliminación directa; asegurando que los datos huérfanos no se queden en tu base. Sin embargo, WP-Sweep no ofrece una optimización automatizada de la base de datos.

WP Rocket:

¿Sabías que WP Rocket incluye tambien la optimización de la base de datos?. Simplemente haz clic en «Base de datos» en la configuración de WP Rocket para acceder a esta funcion intuitiva.

De un vistazo podras ver exactamente cuántas tablas hay disponibles para optimizar. Hay cinco secciones diferentes, que incluyen publicaciones, comentarios, transients y limpieza de la base de datos, desde alli podras limpiar revisiones, publicaciones basura, transients y más. También hay una sección para programar limpiezas automáticas de bases de datos, que puedes configurar para que se ejecuten diariamente, semanalmente o mensualmente.

Para limpiar tu base de datos, simplemente marca las opciones que deseas limpiar y haz clic en «guardar y optimizar». De esta manera WP Rocket comenzará a trabajar optimizando tu base de datos.

Lo bueno que tienen estas funciones de optimización de la base de datos es que WP Rocket es rápido y fácil de usar sin necesidad de instalar otro plugin por separado. Además, con la limpieza automática habilitada, no hay necesidad de volver a configurar: WP Rocket mantendra la base de datos ordenada por tí.

Conclusion:

Espero que este artículo te ayude a acelerar y a optimizar el rendimiento de tu base de datos y sitio de WordPress. Si bien phpmyadmin puede ser un poco abrumador de usar al principio, ejecutar consultas SQL es bastante sencillo, aunque los plugins hacen que sea fácil limpiar tu base de datos. Solo recuerda hacer siempre una copia de seguridad de tu sitio antes de realizar cambios en la base de datos.

Deja una respuesta