source

Oracle 데이터베이스가 UPDATE 쿼리에 무한히 걸려 있습니다.

ittop 2023. 10. 19. 22:47
반응형

Oracle 데이터베이스가 UPDATE 쿼리에 무한히 걸려 있습니다.

갑자기 내 업데이트 쿼리가 실행되지 않습니다. 선택 쿼리를 만들 수 있지만 레코드를 업데이트하려고 하면 데이터베이스가 무한히 중단됩니다. sql plus에서도 시도했지만 아무 일도 일어나지 않습니다.

동일한 레코드 집합에 대해 커밋되지 않은 다른 트랜잭션이 있을 수 있으므로 해당 트랜잭션에 대해 잠겨 있습니다.

그리고 아마 당신이 그들을 가뒀을 거예요, 그들과 똑같이 움직이면서요.UPDATE다른 거래에서

거래를 커밋/롤백하면 됩니다. 괜찮으실 겁니다.

이 쿼리는 업데이트를 차단하고 있는 사용자를 보여줍니다.중단된 업데이트를 실행한 다음 다른 세션에서 다음 작업을 실행합니다.

select s1.username || '@' || s1.machine ||
  ' ( SID=' || s1.sid || ' )  is blocking '
  || s2.username || '@' || s2.machine || ' ( SID=' || s2.sid || ' ) ' AS blocking_status
  from v$lock l1 join v$lock l2 on (l1.id1 = l2.id1 and l2.id2 = l2.id2) 
                 JOIN v$session s1 ON (s1.sid = l1.sid)
                 JOIN v$session s2 ON (s2.sid = l2.sid)
  WHERE l1.BLOCK=1 and l2.request > 0;

편집:

이것을 제대로 설명하자면, 제가 ORAFAQ에서 얼마 전에 이것을 크립한 것 같습니다.

언급URL : https://stackoverflow.com/questions/7501776/oracle-database-is-hanging-infinitly-in-update-queries

반응형