주식회사 누리아이티

정보자산의 보안강화를 위한 3단계 인증 보안SW(BaroPAM) 전문기업인 누리아이티

▶ Tuxedo/오류 메시지(Oracle)

ORA-1555 Snapshot Too Old

누리아이티 2010. 7. 5. 15:02

현상 : ORA-1555 Snapshot Too Old
 

원인 : 1.데이타의 변경이 심한 데이타베이스에서 롤백 세그먼트의 갯수와 크기가 작을 경우에 발생
         2.롤백 세그먼트가 손상되어 읽을 수 없게 된 경우
         3.Fetch Across Commit(테이블에 대하여 Query가 커서를 열고 루프 내에서 데이타를  Fetch
           하고 변경하고 커밋하는 과정에서 발생)
         4.Delayed Block Clean Out(데이타 블럭이 변경되고 커밋되면 오라클은 롤백세그먼트 헤더에
           그 트랜잭션이 커밋되었다고 기록하지만 데이타 블럭을 바로 변경하지는 않는다 (Fast
           Commit). 그리고 다음 트랜잭션이 변경된 블럭을 요구할 때야 비로소 변경 시키는것
 

조치 : 1.커서가 Open된 상태에서는 커밋을 자주하지 않고 롤백 세그먼트 크기를 키워 나가도록
         2.커서를 사용하기 전에 Full Table Scan을 해주면 예방이 가능