검수요청.png검수요청.png

"롤백"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
(SQL에서의 롤백)
(SQL에서의 롤백)
7번째 줄: 7번째 줄:
 
:COMMIT([[커밋]])하여 저장한 것만 복구한다.<br>
 
:COMMIT([[커밋]])하여 저장한 것만 복구한다.<br>
 
[[파일:롤백.png]]
 
[[파일:롤백.png]]
:위 그림에서 ROLLBACK 명령은 마지막으로 수행한  COMMIT 명령까지만 청상처리(1,2)된 상태로 유지한다.
+
- 위 그림에서 ROLLBACK 명령은 마지막으로 수행한  COMMIT 명령까지만 정상처리(1, 2)된 상태로 유지한다.<br>
:그 이후에 수행했던 모든 DML 명령어 작업(3,4,5)들을 취소시켜 이전 상태로 원상 복귀 시킨다.
+
- 그 이후에 수행했던 모든 DML 명령어 작업(3,4,5)들을 취소시켜 이전 상태로 원상 복귀시킨다.<br>
:트랜잭션은 이렇든 ALL-OR-Nothing 방식으로 DML 명령어들을 처리한다.
+
- 트랜잭션은 이렇듯 ALL-OR-Nothing 방식으로 DML 명령어들을 처리한다.<br>
:ALL-OR-Nothing이란 '모든것을 수행하던지 아무것도 하지말던지'라는 의미이다.
+
- ALL-OR-Nothing이란 '모든 것을 수행하든지 아무 것도 하지말든지' 라는 의미이다.
 
{{ 각주 }}
 
{{ 각주 }}
  

2020년 8월 13일 (목) 09:19 판

롤백(rollback)은 데이터베이스에서 업데이트에 오류가 발생할 때 이전 상태로 되돌리는 것을 말한다. 데이터베이스는 업데이트 이전 저널 파일을 사용하여 원래의 정상적인 상태로 되돌린다. 이것은 오류 동작 이후에도 깨끗한 사본으로 복원시킬 수 있기 때문에 무결성을 위해 중요하다. 데이터베이스 서버의 충돌로부터 복원하는 데도 중요하다. 충돌이 일어날 때 특정 트랜잭션을 롤백시킴으로써 데이터베이스는 일관적인 상태로 되돌려진다.[1]

SQL에서의 롤백

  • ROLLBACK : ROLLBACK은 작업 중 문제가 발생되어 트랜잭션의 처리과정에서 발생한 변경사항을 취소하는 명령어이다.
트랜잭션이 시작되기 이전의 상태로 되돌린다.
즉, 마지막 COMMIT을 완료한 시점으로 다시 돌아간다.
COMMIT(커밋)하여 저장한 것만 복구한다.

롤백.png - 위 그림에서 ROLLBACK 명령은 마지막으로 수행한 COMMIT 명령까지만 정상처리(1, 2)된 상태로 유지한다.
- 그 이후에 수행했던 모든 DML 명령어 작업(3,4,5)들을 취소시켜 이전 상태로 원상 복귀시킨다.
- 트랜잭션은 이렇듯 ALL-OR-Nothing 방식으로 DML 명령어들을 처리한다.
- ALL-OR-Nothing이란 '모든 것을 수행하든지 아무 것도 하지말든지' 라는 의미이다.

각주

  1. 위키백과,〈롤백

참고자료

같이 보기


  검수요청.png검수요청.png 이 롤백 문서는 프로그래밍에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.