K ukončení připojení můžete použít pg_terminate_backend(). Abyste mohli tuto funkci používat, musíte být superuživatel. Toto funguje na všech operačních systémech stejně.
SELECT
pg_terminate_backend(pid)
FROM
pg_stat_activity
WHERE
-- don't kill my own connection!
pid <> pg_backend_pid()
-- don't kill the connections to other databases
AND datname = 'database_name'
;
Před provedením tohoto dotazu musíte ZRUŠIT oprávnění CONNECT, abyste se vyhnuli novým připojením:
REVOKE CONNECT ON DATABASE dbname FROM PUBLIC, username;
Pokud používáte Postgres 8.4-9.1, použijte procpid místo pid
SELECT
pg_terminate_backend(procpid)
FROM
pg_stat_activity
WHERE
-- don't kill my own connection!
procpid <> pg_backend_pid()
-- don't kill the connections to other databases
AND datname = 'database_name'
;