본문 바로가기

ORACLE

[oracle] 락 걸린 테이블 확인하고 세션죽이기

오라클 락 걸린 세션 죽이기


/**
sys계정으로 접속
*/
$ sqlplus /nolog
SQL> conn /as sysdba

/**
락걸린 테이블 확인
*/
SELECT vo.session_id,do.object_name, do.owner, do.object_type,do.owner,
vo.xidusn, vo.locked_mode
FROM v$locked_object vo , dba_objects do
WHERE vo.object_id = do.object_id

/**
락걸린 테이블의 갯수
*/
SELECT count(*)
FROM v$locked_object vo , dba_objects do
WHERE vo.object_id = do.object_id

/**
락 걸린 세션 확인
*/
select a.sid, a.serial#
from v$session a, v$lock b, dba_objects c
where a.sid=b.sid and
b.id1=c.object_id and
b.type='TM'

/**
sid,serial#를 이용하여 session kill
*/

alter system kill session 'sid, serial#'

'ORACLE' 카테고리의 다른 글