[펌글] 오라클 LOCK 확인 및 session kill 방법

By | 11월 22, 2012

- 출처 : 오라클 LOCK 확인 및 session kill 방법 - 

테이블에 컬럼을 추가하려 하니 LOCK 이 걸려 추가가 되지 않았다.

LOCK정보를 확인 후 session을 kill 해주자.

=========================================================================================
출처 : 네이버 지식인
http://kin.naver.com/detail/detail.php? ··· aaad6fja
=========================================================================================

lock확인만 하려면

select *
from v$locked_object

where oracle_username = 'oracle유저명'

이러면 lock확인은 됩니다..


lock후 kill 시키려면 위의 query가지고는 kill시킬수가 없어여..
kill시키고자 하는 시리얼 번호를 알아야 하거든여..


select a.session_id as SESSION_ID,
b.serial_no as SERIAL_NO,
a.os_user_name as OS_USER_NAME,
a.oracle_username as ORACLE_USERNAME,
b.status as STATUS
from v$locked_object a, v$session b
where a.session_id = b.sid

SESSION_ID.SERIAL_NO.OS_USER_NAME..ORACLE_USERNAME.STATUS
24.........1102......Administrator.ABCDWRK.........INACTIVE...<--kill 대상
92.........4665......OPS$ABCD......OPS$ABCDUSR.....INACTIVE
92.........4665......OPS$ABCD......OPS$ABCDUSR.....INACTIVE

'.' 는 걍 쓰면 밀려서 안미리게 하려구 집어넣은겁니다..신경쓰지마시고여...

여기서 나온 결과를 가지고 원하는것을 kill시키면 됩니다..

kill sql문 : alter system kill session 'SESSION_ID,SERIAL_NO'

alter system kill session '24,1102'

이러면 삭제가 됩니다.. 

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments