Du kan forhindre fremtidige forbindelser:
REVOKE CONNECT ON DATABASE thedb FROM public;
(og muligvis andre brugere/roller; se \l+
i psql
)
Du kan derefter afslutte alle forbindelser til denne db undtagen din egen:
SELECT pid, pg_terminate_backend(pid)
FROM pg_stat_activity
WHERE datname = current_database() AND pid <> pg_backend_pid();
På ældre versioner pid
blev kaldt procpid
så du bliver nødt til at håndtere det.
Siden du har tilbagekaldt CONNECT
rettigheder, hvad der end forsøgte at oprette forbindelse automatisk, burde ikke længere være i stand til at gøre det.
Du vil nu være i stand til at droppe DB.
Dette virker ikke, hvis du bruger superbrugerforbindelser til normal drift, men hvis du gør det, skal du først løse problemet.
Når du er færdig med at droppe databasen, hvis du opretter databasen igen, kan du udføre nedenstående kommando for at gendanne adgangen
GRANT CONNECT ON DATABASE thedb TO public;