Sèkun blog


Supprimer toutes les tables non propres au site sous wordpress

2021-05-10 sys | tags : wordpress wpcli

Si on a une base de données par site wordpress, parfois, lors d'un exporte, il arrive qu'on ait récupérer des tables d'autres sites, avec d'autres préfix, on peut les supprimer.

On suppose ici que la BD de votre site wordpress ne stocke rien d'autres d'utiles, faites bien un backup de la BD avant toute opération.

Grâce à wp-cli, on peut réaliser ceci en une commande:

old_tables=$(echo "show tables" | wp-cli db cli  | tail -n +2 | grep -v "^$(wp-cli db prefix)")

if [[ -z $old_tables ]]; then
    echo "No table to clean..."
else
    while read db; do
        echo "Remove $db..."
        echo "drop table $db" | wp-cli db cli
    done <<< "$old_tables"
fi
Article publié le 10 mai 2021.