バッチプログラムの開発中などで、(不具合とかで)バッチが終了しないまま放置されたり、 重いバッチをどんどこ実行しまくってセッションが溢れかえったりするのはあるあるですよね。 そんな時に、指定した条件に当てはまるセッションを一気に(正確には2手間で)一掃する方法です。 まずは以下のSQLを実行します。 SELECT DISTINCT 'ALTER SYSTEM KILL SESSION ''' || SID || ', ' || SERIAL# || ''' IMMEDIATE;' AS COMMAND FROM V$SESSION WHERE TYPE <> 'BACKGROUND' AND LOGON_TIME <= '2018/7/1' -- ログインした日付で絞り込む --AND USERNAME = '' -- ログインユーザで絞り込む --AND MACHINE = '' --