Home / Wordpress / Comment optimiser la base MySQL de WordPress.

Comment optimiser la base MySQL de WordPress.

A travers 7 requêtes SQL, nous allons voir comment optimiser la base MySQL du CMS afin de rendre WordPress plus véloce. Attention avant toutes opérations sur la base MySQL vous devez avoir réalisé une sauvegarde complète.

wordpress

Si comme moi vous recevez beaucoup de spam, les tables wp_comments et wp-commentmeta peuvent grossir à vue d’œil. Voyons comment effectuer quelques optimisations sur ces tables.

Toutes les requêtes seront exécutées depuis l’interface phpmyadmin dans l’onglet SQL.

phpmyadmin

Afin de faire un petit bilan à la fin des optimisations voici les statistiques de ma base avant :

  • 1°) Effacer les spams de la table des commentaires.
DELETE FROM wp_comments WHERE comment_approved = "spam"

requete dans phpmyadmin

  • 2°) Effacer les commentaires que vous avez refusé.
DELETE FROM wp_comments WHERE comment_approved = "0"

requete dans phpmyadmin

  • 3°) Effacer toutes les méta-valeurs des commentaires qui n’existent plus.
DELETE FROM wp_commentmeta WHERE comment_id NOT IN (SELECT comment_id FROM wp_comments)

requete dans phpmyadmin

  • 4°) Effacement de toutes les valeurs temporaires (Valeur %transient%).

Depuis les dernières versions de WordPress, celui-ci utilise un mécanisme de cache se basant sur la table wp-options. Cette méthode est pratique mais elle charge inutilement la table des options avec des valeurs qui ne disparaissent jamais.

requete dans phpmyadmin

  • 5°) Effacer les versions des articles.

Le système de restauration des articles est très avantageux, mais même si on édite très rarement des articles publiés, les anciennes versions restent dans la base.

DELETE FROM wp_posts WHERE post_type = "revision"

requete dans phpmyadmin

  • 6°) Effacer les sauvegardes automatiques de WordPress.
DELETE FROM wp_posts WHERE post_status = "auto-draft"

requete dans phpmyadmin

  • 7°) Effacer complètement les enregistrements Askimet.

Une fois activée, l’extension Askimet remplit vite la table wp_commentmeta (un commentaire posté entraine trois enregistrements dans la table wp_commentmeta). Il est donc indispensable de lancer régulièrement la requête ci-dessous.

DELETE FROM `wp_commentmeta` WHERE `meta_key` LIKE "Akismet%"

requete dans phpmyadmin
Maintenant que toutes les lignes superflues sont supprimées, vous devez optimiser vos tables.

Toujours sous PhpMyAdmin, revenez à l’onglet Structure

tables phpmyadmin

Ensuite aller en bas de page et cliquer sur Tout cocher (cela sélectionne toutes les tables de votre base).

table phpmyadmin

Puis dans la liste déroulante situé en face, sélectionner Optimiser la table puis cliquer sur Exécuter.

optimiser table phpmyadmin

A bout de quelques secondes toutes vos tables sont optimisées.

requête SQL phpmyadmin

Maintenant faisons un petit bilan de ces optimisations :

optimisation phpmyadmin

Au niveau des enregistrements 2396 lignes en moins et surtout au niveau taille moins 7 Mo, c’est ma sauvegarde qui va être contente.

Si vous connaissez d’autre requête pour optimiser la base MySQL de WordPress je suis preneur, laisser un commentaire ou utiliser le formulaire de contact.

That’s All.

  

1 potin

  1. Merci pour le partage de ces astuces. Il est possible d’optimiser toutes les bases de données d’un serveur en utilisant mysqlcheck, qui est largement plus rapide notamment avec un grand volume de données.

    La commande :
    mysqlcheck -Aos

    ou mysqlcheck -u root -Aos -p
    pour s’identifier manuellement en tant que root

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Praesent ut in diam Praesent porta. Nullam leo venenatis justo eget