Nettoyer une base de données WordPress – WooCommerce via phpMyAdmin

Votre base de données WordPress se met à gonfler comme la grenouille de la fable, ralentissant le site ? Votre hébergeur vous a bloqué en lecture seule car votre base de données dépasse la taille autorisée ? Faire un nettoyage via les plugins devient soit impossible soit inefficace, il faut plonger dans votre base données via phpMyAdmin.

base de donnees grossit trop

Voici un récapitulatif des commandes SQL les plus utiles pour nettoyer et optimiser votre base de données.

I/ Sauvegarder la Base de données

Avant toute manipulation, une (et même plusieurs) sauvegarde complète de votre base de données est impérative.

  • Votre hébergeur met certainement à votre disposition un système de sauvegarde ponctuel de votre système complet ou de votre base de données.
  • Exporter la base complète via l’outil phpMyAdmin

II/ Nettoyer les tables de base de WordPress

1. Supprimer les révisions d’articles

WordPress enregistre les révisions de chaque article, ce qui alourdit la base. Si vous ne lui avez pas mis de limite de conservation (via wp-config), les révisions sont conservées à l’infini.

DELETE FROM wp_posts WHERE post_type = 'revision';

2. Supprimer les brouillons et articles en corbeille

DELETE FROM wp_posts WHERE post_status IN ('auto-draft', 'trash');

3. Suppression des commentaires indésirables

a) Commentaires en spam

DELETE FROM wp_comments WHERE comment_approved = 'spam';

b) Commentaires en attente de validation

DELETE FROM wp_comments WHERE comment_approved = '0';

4. Nettoyer les métadonnées orphelines

a) Métadonnées d’articles

DELETE pm FROM wp_postmeta pm LEFT JOIN wp_posts p ON p.ID = pm.post_id WHERE p.ID IS NULL;

b) Métadonnées d’utilisateurs

DELETE um FROM wp_usermeta um LEFT JOIN wp_users u ON u.ID = um.user_id WHERE u.ID IS NULL;

c) Métadonnées de commentaires

DELETE cm FROM wp_commentmeta cm LEFT JOIN wp_comments c ON c.comment_ID = cm.comment_id WHERE c.comment_ID IS NULL;

5. Nettoyer les transients (données temporaires)

DELETE FROM wp_options WHERE option_name LIKE ('_transient_%') OR option_name LIKE ('_site_transient_%');

6. Nettoyer les actions

DELETE FROM wp_actionscheduler_actions WHERE status IN ('complete', 'canceled', 'failed') 
AND scheduled_date_gmt < NOW() - INTERVAL 30 DAY;

DELETE FROM wp_actionscheduler_logs  WHERE action_id NOT IN (SELECT action_id FROM wp_actionscheduler_actions);

II/ Nettoyage des tables de base Woocommerce

1. Supprimer les produits en brouillon ou corbeille (WooCommerce)

DELETE FROM wp_posts WHERE post_type = 'product' AND post_status IN ('draft', 'trash');

2. Supprimer les sessions WooCommerce expirées

Woocommerce ancien et mixte (ancien et HPOS)

WooCommerce stocke des sessions utilisateur qui peut rapidement encombrer la base.

DELETE FROM wp_options WHERE option_name LIKE '_wc_session_%';

WooCommerce HPOS et mixte (ancien et HPOS)

Si WooCommerce utilise HPOS (High-Performance Order Storage), les sessions sont stockées dans des tables spécifiques.

DELETE FROM wp_woocommerce_sessions WHERE session_expiry < UNIX_TIMESTAMP();
DELETE FROM wp_options WHERE option_name LIKE ('_transient_%') OR option_name LIKE ('_site_transient_%');

III/ Optimiser les tables

Une fois le nettoyage effectué, optimisez les tables pour récupérer de l’espace.

OPTIMIZE TABLE wp_posts, wp_postmeta, wp_comments, wp_commentmeta, wp_options, wp_users, wp_usermeta, wp_actionscheduler_actions, wp_actionscheduler_logs;

IV/ Manipuler phpMyAdmin

Connectez vous à votre phpMyAdmin, (au besoin vos informations de connexion sont dans votre fichier wp-config.php).

Exporter votre base de données.

Passer les commandes SQL en remplaçant le wp_ par le préfixe de vos tables.

ecran phpmyadmin

Besoin de nettoyer votre base de données ?

Vous craignez de le faire seul ? Travailler sur la base de données vous fait stresser ? Votre coach WordPress est là pour vous guider, et plus si nécessaire

Etablir un plan de sauvegarde avec votre coach WordPress
N'hésitez pas à partager

Publications similaires

  • Déménager son site WordPress

    Quelles sont les raisons qui vous feraient déménager votre site internet? Il n’y a pas qu’UNE seule raison à cette volonté de vouloir déménager un site WordPress:*hébergement trop petit,*SAV insatisfaisant,*prix en…

  • Rollback WordPress, Core, Theme et Plugins

    Il arrive parfois qu’une mise à jour cause des problèmes sur un site WordPress : incompatibilités, bugs ou perte de fonctionnalités. Dans ces situations, effectuer un rollback (retour à une…

  • Peur de modifier vos fichiers WordPress sensibles?

    Votre .htaccess ou le wp-config.php ou le function.php du thème enfant de votre site WordPress La manipulation de ces fichiers sensibles peut rendre votre site WordPress inaccessible. Manipuler vos fichiers…

  • Refondre un vieux site WordPress?

     Trop vieux, plus à jour, plus à la page, envie de changer … mais sans rien perdre   Chaque cas est particulier lorsque l’on veut refondre un site WordPress. Il n’y…

  • Changement de nom de domaine, comment faire ?

    Recentrage d’activités, mariage, divorce,… vous voulez changer de nom de domaine sans changer de site, ni perdre en référencement. Quelles démarches administratives auprès des moteurs de recherche? Si vous faites juste…