DB/Oracle
ORA-00054: 자원이 사용중이고, NOWAIT가 지정되어 있습니다. (TABLE LOCK)
허니팁
2021. 2. 21. 17:41
728x90
반응형
ORA-00054 resource busy and acquire with nowait specified or timeout expired
ORA-00054: 자원이 사용중이고, NOWAIT가 지정되어 있습니다. (TABLE LOCK)
ORA-00054 문제에 대해 알아보겠습니다.
해당 메세지는 DB의 lock이 걸린 경우 또는 테이블 컬럼 변경시 해당 테이블이 사용중에 있을 때 발생합니다.
현재 사용중인 자원의 쿼리를 확인할 수 있습니다.
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 = '테이블명'
;
lock이 발생한 경우라면 kill을 해주고
ALTER SYSTEM KILL SESSION 'sid, serial#';
lock이 아닌 해당 테이블을 사용 중이라면 기다리거나 사용자가 사용하는 시간 외에 작업을 진행해 주시면 됩니다.
728x90
반응형