오라클을 사용하다보면 어느순간 테이블 조회시간이 엄청나게 길어진다거나
아에 조회가 되지 않거나 추가,삭제 작업들이 처리되지 않을때가 있다.
이럴땐 테이블에 락이 걸린건 아닌지 확인해 볼 필요가 있다.
- 락(LOCK) 걸린 테이블 조회
select *
from v$locked_object
where oracle_username = 'user name';
user name은 오라클 접속할때 사용한 id라고 보면 된다.
위 쿼리를 실행에 무언가 데이터가 조회되면 해당 테이블에 락이 걸려있다는 뜻이다.
락을 해제하기 위해서는 세션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'
위 쿼리로 세션id와 시리얼번호를 조회 한다
조회한 세션 id, 시리얼번호를이용해 해당 세션은 해제시킨다
alter system kill session 'sid, serial#'
-----------------------------------------
alter system kill session '24, 1102';
commit ;
끝
'주절주절' 카테고리의 다른 글
오라클 지정한 경로에 파일 생성 (0) | 2017.01.05 |
---|---|
티스토리 초대장 배포합니다(마감) (25) | 2016.06.13 |
오라클 조건에 따른 값 출력 DECODE 함수 (0) | 2016.04.21 |
김주찬 싸이클링히트!! (0) | 2016.04.16 |
오라클 컬럼 추가, 삭제, 변경 (1) | 2016.04.06 |