Vous n'êtes pas identifié(e).
Pages : 1
Bonjour,
J'aimerai supprimer une base de données précise avec la commande drop database ou dropdb mais cela ne fonctionne pas car il y a des connections actives.
psql -c "SELECT pg_terminate_backend(procpid) FROM pg_stat_activity WHERE datname ='$SCHEMA'";
Cela ne sert a rien car je suis en 8.2 et cela ne fonctionne qu'en 8.4
psql -c "SELECT pg_cancel_backend(procpid) FROM pg_stat_activity WHERE datname ='$SCHEMA'";
pg_cancel_backend
-------------------
t
t
t
(3 rows)
Cela kill les sessions actives mais j'enchaine de suite avec un drop database et cela ne fonctionne toujours pas:
database removal failed: ERROR: database "*******" is being accessed by other users
Des idées pour les plus anciens d'entre vous ?
PS: je ne peux pas migrer en 8.4 ou en 9
Merci,
Dernière modification par d_light (06/12/2012 17:06:44)
Hors ligne
Bonjour,
avec une version 8.2, soit couper la connexion par le réseau et attendre le timeout, ou faire un kill -15 (surtout pas -9) des connexions restantes. Pas vraiment de solution propre à ma connaissance.
Julien.
https://rjuju.github.io/
Hors ligne
Ok, bon je vais tenter de me débrouiller avec ça. Merci rjuju
Hors ligne
Arrêter le serveur et le redémarrer, c'est la seule solution propre en 8.2.
Guillaume.
Hors ligne
Pages : 1