web-dev-qa-db-fra.com

Drop table prend trop de temps

J'ai une table avec env. 200 millions de lignes (environ 0,5 To) et je veux le supprimer, mais cela prend vraiment beaucoup de temps.

Cela fonctionne depuis 2 jours maintenant. Je soupçonne que la fonction de restauration est la raison de cela.

Existe-t-il un moyen d'éviter la fonction de restauration afin de pouvoir accélérer ce processus? Je veux juste me débarrasser du tableau, car les données qui y figurent n'ont plus aucune valeur.

5
Pelle G

Vous pouvez répertorier les backends en cours d'exécution avec

SELECT * FROM pg_stat_activity;

identifier le processus qui tente de restaurer quelque chose qui fonctionne sur cette table.

Trouvez son pid.

Vous pouvez terminer un backend avec la requête SELECT pg_terminate_backend(64738), où 64738 est la colonne pid dans votre précédent SELECT.

Après cela, vous pouvez probablement DROP ce tableau.

Si même cela ne fonctionne pas, redémarrez postgresql, mais très probablement.