1619, 1/81 회원가입  로그인  
   kordokrip
   오라클 Undo와 Redo의 차이점

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=2017 [복사]


Redo는 re + do의 합성어 "다시 하다."

Undo는 un + doㅇ의 합성어 "원상태로 돌리다"



Redo는 오라클에서 기본적으로 복구의 역활을 한다. 오라클 서버에 무슨작업을 하든지 모두 리두에 기록이 된다.

Undo는 작업롤백과 읽기 일관성, 복구를 한다.



redo는 복구를 할때 사용자가 했던 작업을 그대로 다시 하지만

undo는 사용자가 했던 작업을 반대로 한다. 즉 사용자의 작업을 원상태로 돌린다.



예 같은 작업을 할때 세션이 비정상 종료 되었을때



update 11

set no = no+1

where id = 1;



세션이 복구 되는 과정에서 SMON이 리두를 이용해 아래의 작업을 한다.



update t1

set no = no +1

where id = 1;



하지만 만일 세션이 비정상적으로 종료가 되기전 COMMIT을 하지 않았다면

Undo를 이용하여 아래와 같은 작업을 이어서 하게 된다.



update t1

set no = no-1

where id  =1;

마치 다시 하지 않는 것처럼 된다. 간단히 말하면 복구와 되돌리기 인것이다.




  Hit : 9226     Date : 2012/06/21 04:30