PostgreSQL에 주어진 데이터베이스에 대한 활성 연결을 선택하는 명령이 있습니까?
psql
데이터베이스에 대한 활성 연결 이 있기 때문에 데이터베이스 중 하나를 삭제할 수 없으므로 연결이 무엇인지 (어떤 컴퓨터에서)보고 싶습니다.
답변
오, 방금 PostgreSQL 포럼에서 해당 명령을 찾았습니다.
SELECT * FROM pg_stat_activity;
답변
다음은 postgres DB에서 활성 연결 / 쿼리를 제공합니다
SELECT
pid
,datname
,usename
,application_name
,client_hostname
,client_port
,backend_start
,query_start
,query
,state
FROM pg_stat_activity
WHERE state = 'active';
이미 실행 된 연결 / 쿼리를 얻기 위해 active 대신 ‘idle’을 사용할 수 있습니다.
답변
SELECT * FROM pg_stat_activity WHERE datname = 'dbname' and state = 'active';
이후로는 pg_stat_activity
어떤 상태를 갖는 모든 데이터베이스의 접속 통계를 포함하거나 idle
또는 active
데이터베이스 이름 및 연결 상태는 원하는 출력을 얻을 수있는 쿼리에 포함되어야한다.