On 4/10/20 1:20 PM, Andrus wrote:
Hi!

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

postgres@template1 ERROR:  database "mydb" is being accessed by other users
postgres@template1 DETAIL:  There is 1 other session using the database.
postgres@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 ?

Find backends:

https://www.postgresql.org/docs/12/monitoring-stats.html#PG-STAT-ACTIVITY-VIEW

Kill backends:

https://www.postgresql.org/docs/12/functions-admin.html#FUNCTIONS-ADMIN-SIGNAL


Andrus.




--
Adrian Klaver
adrian.kla...@aklaver.com


Reply via email to