Por exemplo, para eliminar unha base base de datos en PostgreSQL, primeiro hai que coñecer que conexións existentes están activas, para primeiro apagalas e despois eliminar a base de datos. Para lograr isto hai que levar a cabo dúas consultas. A primeira delas e establecer que conexións están activas. Para logralo executamos:
SELECT pg_terminate_backend(pid)
FROM pg_stat_activity
WHERE
-- evitar eliminar a conexión propia!
pid <> pg_backend_pid()
-- e tampouco eliminar as conexións a outras bases de datos
AND datname = 'database_name';
Unha vez que temos recoñecidas as conexións á base de datos, revocamos as conexións:
REVOKE CONNECT ON DATABASE database_name FROM PUBLIC, username;
Unha vez que temos desconectada a base de datos podemos pasar á súa eliminación.
FONTE:
https://stackoverflow.com/questions/5108876/kill-a-postgresql-session-connection