• ベストアンサー

SQLでPostgreSQLサーバーを切断させたいと考えています。なか

SQLでPostgreSQLサーバーを切断させたいと考えています。なかなかわかりません。 だれか、教えて頂ければ大変助かります。 宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • yamada59
  • ベストアンサー率74% (29/39)
回答No.1

pg_stat_activity ビューを参照すれば、実行中の SQL とその PID を特定できるので、 test=> SELECT procpid, current_query FROM pg_stat_activity; procpid | current_query ---------+---------------------------------------------------------------- 17288 | <IDLE> in transaction 17287 | UPDATE branches SET bbalance = bbalance + 1487 WHERE bid = 5; スーパーユーザでデータベースに接続し、その PID を指定して pg_cancel_backend 関数を呼び出してあげれば、実行中の SQL をキャンセルしてサーバとの接続を切断できます。 test=> SELECT pg_cancel_backend(17287);

関連するQ&A