...pudding - diary


2014-01-10

_ [Software] DB2 でテーブルロックさせているアプリを探して終了させる

DB2にて、調子の悪いテーブルにクエリ投げたら返事帰ってこなくなってテーブルロックしたままになっちゃったときの解除方法。

get snapshot for locks でロック状態にあるものの一覧を出してくれる。だいたいどのへんかなーというのをあたりをつけておく。

db2 "get snapshot for locks on DBNAME"

list application で接続しているアプリケーション一覧を出してくれる。

db2 "list application"

アプリケーションハンドルが表示される。じゃあこの中で、今回たまたま調子が悪かった CSE.EXE についてみてみよう。

db2 "list application" | grep CSE.exe 
DBNAME CSE.exe 906 192.168.0.10.48905.1401101234 DBNAME 1

これだ。じゃああとはこれを強制終了させればいい。ハンドルを指定して終了。今回の例では906な。

db2 "force application(906)"
DB20000I FORCE APPLICATION コマンドが正常に完了しました。
DB21024I このコマンドは非同期であり、即時に有効にならない場合もあります。

できた。


2014年
1月
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Twitter : @moriya_jp