Forcibly disconnect users from one database

From: "Andrus" <kobruleht2(at)hot(dot)ee>
To: "pgsql-general" <pgsql-general(at)postgresql(dot)org>
Subject: Forcibly disconnect users from one database
Date: 2020-04-10 20:20:04
Message-ID: 1C5A3D61BBBE42A38C61C436AEF3C20E@dell2
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi!

Postgres 12 does not allow to drop database if it is in use. DROP DATABASE throws error:

postgres(at)template1 ERROR: database "mydb" is being accessed by other users
postgres(at)template1 DETAIL: There is 1 other session using the database.
postgres(at)template1 STATEMENT: DROP DATABASE "mydb"

How to disconnect all users from database?
Using

/etc/init.d/postgresql restart

disconnects users from all databases. How to disconnect users from one database only ?
I looked into pgAdmin 4 but havent found such command.

pgAdmin 3 had buttons to select kill processes by database name but those disappeared in pgAdmin 4.

How to find which users are using database and forcibly disconnect them ?

Andrus.

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Bruce Momjian 2020-04-10 20:25:08 Re: Using of --data-checksums
Previous Message Adrian Klaver 2020-04-10 18:30:53 Re: Huge number of pg_temp and pg_toast_temp schemas