😺UNDO
- 트랜잭션을 취소(롤백)할 때 읽기 일관성을 제공하기 위해
- 변경 이전의 이전값을 저장함
- 주로 ROLLBACK,읽기 일관성, 실패 시 데이터 복구에 사용됨
예시)UPDATE employees SET salay = 5000 where id =1;
- UNDO에는 salary의 이전값(예:4000)이 저장된다.
- ROLLBACK;을 수행하면 UNDO 정보를 참조하여 salay 값을 4000으로 복구한다.
😺REDO
- 데이터 변경사항을 재적용 하기 위해 사용됨
- 트랜잭션이 커밋된 이후의 변경 사항을 저장함
- 주로 데이터베이스 장애 이후 복구를 위해 사용됨
예시)UPDATE employees SET salay = 5000 where id =1;
- 트랜잭션이 COMMIT되면 REDO로그에 "salay를 5000으로 변경"한 정보가 저장됨
- 시스템 장애로 데이터 손상이 발생한 경우,REDO정보를 이용해 변경 사항을 다시 적용해서 데이터를 복구함