PostgreSQL: Temporarily disable connections

To mark database ‘applogs’ as not accepting new connections:

update pg_database set datallowconn = false where datname="applogs";

Another possibility would be to revoke ‘connect’ access on the database for the client role(s).

Disconnect users from database = kill backend. So to disconnect all other users from “applogs” database, for example:

select pg_terminate_backend(procpid)
from pg_stat_activity
where datname="applogs" and procpid <> pg_backend_pid();

Once you’ve done both of those, you are the only user connected to ‘applogs’. Although there might actually be a delay before the backends actually finish disconnecting?

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)