Posted on: January 29, 2020 12:18 PM
Posted by: Renato
Categories: Variados postgresql database sql
Views: 973
Ao tentar dropa um banco de dados do PostgreSQL, "target_db" e você encontrará o erro abaixo:
postgres=# DROP DATABASE target_db; ERROR: database "target_db" is being accessed by other users DETAIL: There is 1 other session using the database. postgres=#
Se você ficar acima do erro, há 1 conexão ativa aberta para target_db, portanto, não será possível excluir o banco de dados selecionado até que a conexão ativa seja fechada. Portanto, para excluir o banco de dados selecionado primeiro, precisamos fechar todas as conexões existentes no banco de dados selecionado. Isso pode ser feito com a consulta como abaixo
SELECT pg_terminate_backend(pg_stat_activity.pid) FROM pg_stat_activity WHERE pg_stat_activity.datname = 'target_db' AND pid <> pg_backend_pid();
Uma vez acima, a consulta é executada. Podemos eliminar o db de destino sem nenhum erro executando a consulta abaixo
DROP DATABASE target_db
Donate to Site
Renato
Developer