ロックの解除方法
あるアプリのデバッグ中に、間違ってAPサーバを停止してしまい、ロックされたままになってしまった。
その時に調べたロックの解除方法。
ロック原因のセッション抽出
SELECT SID, SERIAL# FROM V$SESSION WHERE SID IN (SELECT SID FROM V$LOCK WHERE TYPE IN ('TM','TX') );
つまり、表ロック、行ロックを保持するセッションIDを含むセッションIDとセッション・シリアル番号を抽出しています。
ロックの解除
ALTER SYSTEM KILL SESSION '<SID>, <SERIAL#>';
※SID、SERIAL#には、さきほど抽出したセッション情報を入力します。
注意事項
DBA権限がないと、上記のクエリは実行できないです。
最後に
APサーバが停止時に、自動的にロールバックするようにすればいいんじゃね?
今度、作成してみよう!!