Closed1
PostgreSQLで、現在のコネクションを確認・削除する

1. 現在のコネクションを確認する方法
PostgreSQL にはシステムビュー pg_stat_activity
があり、そこからセッションの情報を取得できます。
SELECT pid, usename, datname, client_addr, application_name, state, query
FROM pg_stat_activity;
- pid: プロセスID(後で強制終了に使う)
- usename: 接続ユーザー
- datname: 接続DB
- client_addr: クライアントのIP
-
state: 状態(
active
,idle
,idle in transaction
など) - query: 実行中のSQL
2. コネクションを切断する方法
特定のセッションを切断するには pg_terminate_backend()
を使います。
SELECT pg_terminate_backend(pid)
FROM pg_stat_activity
WHERE pid = 12345;
- pid は上のクエリで確認したプロセスID。
-
pg_terminate_backend
は「即時切断」なので、強制的にセッションを終了します。
このスクラップは28日前にクローズされました