セッション/クエリを終了(kill)
Oracle
ALTER SYSTEM KILL SESSION 'sid,serial#' IMMEDIATE;
-- To cancel only the running statement (18c+):
-- ALTER SYSTEM CANCEL SQL 'sid,serial#';v$session から sid と serial# の値を取得する。IMMEDIATE はロールバックを即座に開始する。
PostgreSQL
-- Cancel only the running query (the session stays):
SELECT pg_cancel_backend(pid);
-- Close the session entirely:
SELECT pg_terminate_backend(pid);まず pg_cancel_backend を試し、効かなければ pg_terminate_backend を使用する。
MySQL
-- Kill only the query:
KILL QUERY <id>;
-- Close the connection entirely:
KILL CONNECTION <id>;<id> の値は processlist の Id 列。
SQL Server
KILL <session_id>;
-- To see rollback progress:
-- KILL <session_id> WITH STATUSONLY;KILL はオープン中のトランザクションをロールバックする。大きなトランザクションではロールバックに長時間かかることがある。
MongoDB
db.killOp(<opid>)opid の値は db.currentOp() 出力の opid フィールドから取得する。
Redis
CLIENT KILL ID <client-id>
# or by address: CLIENT KILL ADDR 10.0.0.5:6379client-id は CLIENT LIST で取得する。既に実行中の単一コマンドは中断できない(Lua スクリプトは例外: SCRIPT KILL)ため、完了を待つ必要がある。BLPOP/XREAD BLOCK などのブロッキングコマンドで待機中のクライアントを接続を切らずに解放するには CLIENT UNBLOCK <client-id> [TIMEOUT|ERROR] を使用する。CLIENT UNPAUSE は CLIENT PAUSE で一時停止したクライアントを再開するだけ。