반응형
![[ORACLE] ORA-02049: 시간초과: 분산 트랜잭션이 잠금으로 대기중 입니다 해결방법 [ORACLE] ORA-02049: 시간초과: 분산 트랜잭션이 잠금으로 대기중 입니다 해결방법](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
금일 항상 놓칠 수 있는 데이터베이스 락이 걸려서 정리하고 넘어가고자 합니다.
"ORA-02049: 시간초과: 분산 트랜잭션이 잠금으로 대기중 입니다" 의 발생 원인과 해결방법입니다.
![[ORACLE] ORA-02049: 시간초과: 분산 트랜잭션이 잠금으로 대기중 입니다 해결방법 [ORACLE] ORA-02049: 시간초과: 분산 트랜잭션이 잠금으로 대기중 입니다 해결방법](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
ORA-02049 발생 원인
특정 쿼리를 실행 다음 COMMIT 이나 ROLLBACK 을 실행하지 않은 상태에서 Java 프로젝트에서 같은 테이블로의 Update를 실행 하는 경우 발생하며, 본인 같은 경우에는 프로시저가 돌아가는 와중에 다른 작업을 하다가 락이 걸렸습니다.
이 오류는 시간이 지나면서 rollback segment의 수치가 낮아지면서 자동으로 테이블 락이 해제되기도 하지만 빠른 해결을 하기위해 다음과 같이진행해 주시면 됩니다.
ORA-02049 문제해결
SELECT A.SID, A.SERIAL#, B.TYPE, C.OBJECT_NAME 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' ;
위 명령어를 사용 후 나오는 결과값이 있으면 락 걸린데이터가 있다는 의미
alter system kill session '481,33763';
SID, SERIAL# 값을 차레대로 콤마(,)로 구분하여 넣어서 실행시켜주고 재 조회시 사라지면 해결~!!
반응형
'직장생활 > DataBase' 카테고리의 다른 글
[ORALCE] DBMS JOB 배치잡 자동으로 살리는 방법 (0) | 2024.11.13 |
---|---|
[Oracle] 테이블스페이스 관리 (0) | 2024.11.08 |
Oracle 삭제된 테이블 복구 (91) | 2024.01.05 |
[Oracle] 자음 초성 추출 함수, 자음으로 검색, 초성 검색 (0) | 2023.05.19 |
[Oracle] 오라클 SELECT 해서 INSERT 하는 방법 (여러개, 서브쿼리) (0) | 2023.05.16 |
댓글