55006: object_in_use
PostgreSQLWas bedeutet das?
Die Operation kann auf dem Zielobjekt (meist einer Datenbank) nicht ausgeführt werden, weil es von anderen Sessions verwendet wird. Zum Beispiel kann eine Datenbank mit aktiven Verbindungen nicht gelöscht werden.
Ursache
Offene Verbindungen zur Datenbank während DROP DATABASE; eine Operation, die eine exklusive Sperre auf einem verwendeten Objekt erfordert; eine andere Session hält das Objekt.
Lösung
Finde und beende offene Verbindungen zur Zieldatenbank: SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname = 'db_name' AND pid <> pg_backend_pid(); Blockiere neue Verbindungen (falls nötig). Lösche sie ab PostgreSQL 13 unter zwangsweisem Schließen der Verbindungen: DROP DATABASE db_name WITH (FORCE);