Supprimer toutes les tables non propres au site
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