본문 바로가기
공부/시행착오

[Oracle] ORA-00054: 리소스가 사용 중이어서 NOWAIT가 지정되었거나 시간 초과가 만료된 상태로 획득합니다.

by KANGJUNG 2021. 10. 13.
728x90

이용자에 대한 메모를 더 많이 할 수 있게 해 달라는 요청이 있어서 컬럼의 사이즈를 늘리기  ALTER TABLE을 하려고 하다가 다음과 같은 오류가 나왔습니다.


오류 보고 -
SQL 오류: ORA-00054: 리소스가 사용 중이어서 NOWAIT가 지정되었거나 시간 초과가 만료된 상태로 획득합니다.
00054. 00000 -  "resource busy and acquire with NOWAIT specified or timeout expired"
*Cause:    Interested resource is busy.
*Action:   Retry if necessary or increase timeout.

 

SELECT A.SID, A.SERIAL#, A.STATUS
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'
 AND C.OBJECT_NAME = '테이블명';

 

 

테이블 상태를 확인하니 비활성화(INACTIVE) 상태 해당 결과의 session을 kill 하여 해결 하였습니다.

ALTER SYSTEM KILL SESSION ‘SID번호, SERIAL번호’;

kill 수행 후 정상적으로 테이블이 수정되었습니다.

728x90
반응형

댓글