SMALL

작년 공기업 PT면접에서 나왔던 UNDO와 REDO에 대해 정리를 해보겠습니다.


EX)


UPDATE table

SET cnt = cnt+1

WHERE id = 1;


UNDO


UNDO는 원상태로 돌리다라는 의미를 가진다.

UNDO는 작업 롤백, 읽기 일관성, 복구의 역할을 가지며, 사용자가 했던 작업을 반대로 하는 것이다.


위의 예시에 UNDO 작업을 하면

UPDATE table

SET cnt = cnt-1

WHERE id = 1;


위와 같은 작업을 하게 된다.


REDO


REDO는 작업을 다시하다라는 의미를 가진다.

REDO는 복구의 역할을 하며, 오라클 서버에서 모든 작업에 대해 모두 REDO에 기록을 한다.


위의 예시에 REDO 작업을 하면

UPDATE table

SET cnt = cnt+1

WHERE id = 1;


위와 같은 작업을 하게 된다.


결론


간단하게 말하자면 REDO는 세션을 복구되는 과정에 사용되며 UNDO는 세션이 비정상 종료가 되기전에 커밋이 되지 않을 때 사용된다.

LIST

'전공 > 데이터베이스' 카테고리의 다른 글

CTAS(Create Table As Select)  (0) 2018.07.17
SQL 명령어  (0) 2018.07.16
UNION과 UNION ALL  (0) 2018.06.11
DB정규화  (0) 2018.05.17
트랜잭션  (0) 2018.05.04

+ Recent posts