WordPress : nettoyage de la base de données

wordpress_icon_blue Avec le temps, les mises à jour successives et l’installation de différents plugins, la base de données de WordPress a tendance à prendre du poids, ce qui nuit aux performances. Voici donc comment lui faire bénéficier d’un petit régime.

N’oubliez pas de faire une sauvegarde de votre base de données avant de lancer ces requêtes. Backup now.

Nettoyage de wp_postmeta

Avant optimisation, ma table wp-postmeta faisait 12 403 enregistrements.

DELETE FROM wp_postmeta WHERE meta_key = '_edit_lock';
DELETE FROM wp_postmeta WHERE meta_key = '_edit_last';
DELETE FROM wp_postmeta WHERE meta_key = '_wp_old_slug';

Maintenant : 12 240.

Nettoyage de wp_commentmeta

On supprime tout ce qu’Akismet nous a mis dans la table wp_commentmeta :

DELETE FROM wp_commentmeta WHERE meta_key LIKE '%akismet%';

et on supprime toutes les entrées qui n’ont aucune relation avec wp_comments :

DELETE FROM wp_commentmeta WHERE comment_id NOT IN (SELECT comment_id FROM wp_comments);

Nettoyage de wp_options

Passage de 880 enregistrements à 476. WordPress crée ces entrées automatiquement et les purge occasionnellement, autant l’aider un peu.

DELETE FROM wp_options WHERE option_name LIKE '_site_transient_browser_%';
DELETE FROM wp_options WHERE option_name LIKE '_site_transient_timeout_browser_%';
DELETE FROM wp_options WHERE option_name LIKE '_transient_%';

Je vous recommande le plugin Clean Options qui scanne wp_options à la recherche d’options obsolètes. C’est très utile lorsque vous essayez des plugins avant de les supprimer et qu’ils laissent des informations dans la base. Clean Options vous permet de les trouver, il vous suffit de vérifier que c’est bien exact et de nettoyer.

Rencontrez-vous des défis avec votre site WordPress ou WooCommerce? Laissez-moi les résoudre pour vous.

Discutons des solutions possibles »

Articles conseillés :

6 pensées sur “WordPress : nettoyage de la base de données”

    • Salut Agat’,

      Oui, tu peux les rentrer dans phpmyadmin, webmin ou via un script PHP que tu pourrais appeler soit directement, soit via un cronjob.

      Tu as aussi des plugins qui permettent d’exécuter des requêtes depuis l’administration de WordPress : SQL Executioner ou WP-DB Manager par exemple.

      Reply
  1. Merci Matt !
    Je viens de récupérer mes accès, j’étais fermé dehors depuis mai 2012. Ce soir, je me suis re-motivé, j’ai bourriné dans le FTP, j’ai bourriné dans PhpMyAdmin et je suis rentré chez moi ! (au bout de deux heures…)
    Bon, en fait, je m’étais fait hacker à fond, on m’avait shooté tous les users officiels et j’avais 200 users fictifs, grrrrr.

    Mise à jour de WP, mise à jour des extensions et donc je termine par un petit ménage de la base grâce à toi.

    Je vais de nouveau pouvoir poster des articles inutiles donc rigoureusement indispensables !

    Reply
    • Je t’en prie Olmon !

      C’est la mode en ce moment ces attaques sur les anciennes versions de WordPress, on a tous intérêt à garder le code à jour.

      Glad you’re back :)

      Reply

Opinions