Чтобы пометить базу данных «applogs» как не принимающую новые подключения:
update pg_database set datallowconn = false where datname = 'applogs';
Другой возможностью будет аннулирование доступа «connect» к базе данных для роли (ей) клиента.
Отключить пользователей от базы данных = убить бэкэнд. Таким образом, чтобы отключить всех других пользователей от базы данных «applogs», например:
select pg_terminate_backend(procpid)
from pg_stat_activity
where datname = 'applogs' and procpid <> pg_backend_pid();
Как только вы сделали оба этих шага, вы единственный пользователь, подключенный к 'applogs'. Хотя на самом деле может быть задержка, прежде чем бэкэнды действительно завершат отключение?