Lock 잡고 있는 세션을 강제로 종료하는 방법입니다.
sys 계정으로 접속하셔서 수행하셔야 합니다.
1. v$lock 에서 table 이름과 transaction ID, lock 종류를 확인한다.
Select a.table_name, b.trans_id, b.lock_desc
From system_.sys_tables_ a, v$lock b
Where a.table_oid = b.table_oid;
2. 위에서 얻은 trans_id 를 이용하여 session 을 찾는다.
Select session_id, execute_flag, total_time, execute_time, rpad(query,400)
From v$statement
Where tx_id = 위에서 얻은 trans_id;
3. session_id 를 이용하여 session 정보를 확인한다.
Select comm_name, client_app_info
From v$session
Where id = 위에서 얻은 session_id;
4. session 을 끊는다.
Alter database mydb session close session_id;
mydb 는 database name 으로 $ALTIBASE_HOME/conf/altibase.properties 파일을 열어보면
DB_NAME 항목설정으로 확인하시면 됩니다.
Session_id 는 물론 위에서 획득한 session_id 를 주시면 되구요.
위의 v$ 뷰라든가 system_ meta table 의 컬럼에 대한 정보는 저희 A5 admin 매뉴얼을 보시면 잘 나와있습니다.