[SQL] ORA-00054 : NOWAIT와 자원 바쁜 취득 지정
SQLORA-00054 : NOWAIT와 자원 바쁜 취득 지정
나는 테이블을 갱신의 한가운데에 있었다 스크립트를 죽였다. 지금은 내가 무엇입니까 스크립트를 다시 실행하면,
나는 테이블이 잠겨 가정? 어떻게 테이블 잠금을 해제 할? 미리 감사드립니다.
해결법
-
==============================
1.1 단계:
1 단계:
select object_name, s.sid, s.serial#, p.spid from v$locked_object l, dba_objects o, v$session s, v$process p where l.object_id = o.object_id and l.session_id = s.sid and s.paddr = p.addr;
2 단계:
alter system kill session 'sid,serial#'; --`sid` and `serial#` get from step 1
추가 정보 : http://www.oracle-base.com/articles/misc/killing-oracle-sessions.php
-
==============================
2.[정보] 사용자 user712934 '에 대한 감사
[정보] 사용자 user712934 '에 대한 감사
또한 SQL, 사용자 이름, 기계, 포트 정보를 검색하고 연결을 보유하고있는 실제 프로세스를 얻을 수 있습니다
SELECT O.OBJECT_NAME, S.SID, S.SERIAL#, P.SPID, S.PROGRAM,S.USERNAME, S.MACHINE,S.PORT , S.LOGON_TIME,SQ.SQL_FULLTEXT FROM V$LOCKED_OBJECT L, DBA_OBJECTS O, V$SESSION S, V$PROCESS P, V$SQL SQ WHERE L.OBJECT_ID = O.OBJECT_ID AND L.SESSION_ID = S.SID AND S.PADDR = P.ADDR AND S.SQL_ADDRESS = SQ.ADDRESS;
-
==============================
3.기다리셔야됩니다. 살해 된 세션은 트랜잭션의 중간 및 기록의 갱신을 많이했다. 이 기록은 롤백 할 수 있고 일부 백그라운드 프로세스는 처리를하고있다. 그 동안 당신은 감동 한 기록을 수정할 수 없습니다.
기다리셔야됩니다. 살해 된 세션은 트랜잭션의 중간 및 기록의 갱신을 많이했다. 이 기록은 롤백 할 수 있고 일부 백그라운드 프로세스는 처리를하고있다. 그 동안 당신은 감동 한 기록을 수정할 수 없습니다.
-
==============================
4.당신이 "KILLED"상태에서 잠시 동안 세션, 세션 중단을 살해 할 때 오라클은 후 정리하면서.
당신이 "KILLED"상태에서 잠시 동안 세션, 세션 중단을 살해 할 때 오라클은 후 정리하면서.
당신이 절대적으로, 당신은뿐만 아니라 OS 프로세스를 죽일 수해야하는 경우가에 들고 한 모든 잠금을 해제 것이다, (최대 V $ process.spid)을 보면.
더 자세한 정보를 원하시면이를 참조하십시오.
-
==============================
5.상황에 따라, 테이블은 단지 정상 작동의 일부가 될 수 갇혀 & 당신은 차단 트랜잭션을 죽이고 싶지 않습니다. 당신이 원하는 것은 다른 자원에 대한 명세서 대기를 가지고있다. 오라클 11g는이 처리하도록 설정할 수 있습니다 DDL 시간 제한이 있습니다.
상황에 따라, 테이블은 단지 정상 작동의 일부가 될 수 갇혀 & 당신은 차단 트랜잭션을 죽이고 싶지 않습니다. 당신이 원하는 것은 다른 자원에 대한 명세서 대기를 가지고있다. 오라클 11g는이 처리하도록 설정할 수 있습니다 DDL 시간 제한이 있습니다.
더 많은 창의력과 재 시도를 처리하기 위해 몇 가지 PL / SQL을 작성해야 다음 10g에 나왔습니다 거래는합니다. ORA-00054 오라클에서 주위 방법 좀 봐 resource_busy 예외가 발생하면이 명세서를 재 - 실행 10g의.
from https://stackoverflow.com/questions/3075738/ora-00054-resource-busy-and-acquire-with-nowait-specified by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] CodeIgniter는 $ this-> DB->의 get (), 어떻게 특정 행에 대한 값을 반환합니까? (0) | 2020.07.23 |
---|---|
[SQL] 사거리 표 디자인 - 많은 관계 디자인에 많은 (0) | 2020.07.23 |
[SQL] 내가 어떻게 벤치마킹을 위해 오라클 실행 계획 캐시를 삭제합니까? (0) | 2020.07.23 |
[SQL] 가져 오기 이전 / 다음 기록 : 레일 (0) | 2020.07.23 |
[SQL] 이름 바꾸기 SQL 서버 스키마 (0) | 2020.07.23 |