Du kan bruge pg_terminate_backend() til at afbryde en forbindelse. Du skal være superbruger for at bruge denne funktion. Dette fungerer på samme måde på alle operativsystemer.
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'
;
Før du udfører denne forespørgsel, er du nødt til at TILBAGE CONNECT-rettighederne for at undgå nye forbindelser:
REVOKE CONNECT ON DATABASE dbname FROM PUBLIC, username;
Hvis du bruger Postgres 8.4-9.1, brug procpid i stedet for 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'
;