263 votes

Postgresql - Impossible de supprimer la base de données en raison de certaines connexions automatiques à la base de données.

Chaque fois que j'essaie d'abandonner la base de données, j'obtiens :

ERROR:  database "pilot" is being accessed by other users
DETAIL:  There is 1 other session using the database.

Quand je l'utilise :

SELECT pg_terminate_backend(pg_stat_activity.pid)
FROM pg_stat_activity
WHERE pg_stat_activity.datname = 'TARGET_DB';

J'ai mis fin à la connexion de cette base de données, mais si j'essaie de supprimer la base de données après cela, quelqu'un se connecte automatiquement à cette base de données et donne cette erreur. Qu'est-ce qui peut provoquer cela ? Personne n'utilise cette base de données, sauf moi.

0voto

scrutiny Points 1

Pour moi, je redémarre simplement postgresql.

systemctl restart postgresql

-1voto

Alexandr Points 262

Dans le terminal, essayez cette commande :

ps -ef | grep postgres

vous verrez comme :

501 1445 3645 0 12:05AM 0:00.03 postgres : sasha dbname [local] idle

Le troisième numéro (3645) est le PID.

Vous pouvez supprimer cette

sudo kill -9 3645

Et après cela, lancez votre connexion PostgreSQL.

Démarrez manuellement :

pg_ctl -D /usr/local/var/postgres start

-1voto

sanjay singh Points 1

Arrêtez votre application en cours (dans Eclipse). Après avoir réessayé.

-1voto

Uhl Hosting Points 57

Ce dont vous devez être certain, c'est que le service qui utilise le BD n'est pas en cours d'exécution.

J'ai rencontré le même problème, en exécutant quelques applications Java, et aucune des options ci-dessus n'a fonctionné, pas même le redémarrage.

Exécuter un ps aux tuer le service principal en utilisant le DB.

  • kill -9 'PID' de l'application
  • ou si l'application est exécutée en tant que service, assurez-vous d'exécuter la commande service stop cmd pour votre système d'exploitation.

Après cela, la manière par défaut de déposer une table fonctionnera parfaitement.

Dans mon exemple, il y avait des problèmes avec

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X