롤백(데이터 관리)
Rollback (data management)데이터베이스 기술에서 롤백은 데이터베이스를 이전 상태로 되돌리는 작업입니다.롤백은 잘못된 작업을 수행한 [1]후에도 데이터베이스를 깨끗한 복사본으로 복원할 수 있음을 의미하므로 데이터베이스 무결성에 중요합니다.데이터베이스 서버 충돌로부터 복구하는 데 중요합니다. 충돌 시 활성 상태였던 트랜잭션을 롤백하면 데이터베이스가 일관된 상태로 복원됩니다.
롤백 기능은 보통 트랜잭션로그를 사용하여 구현되지만 다중 버전 동시성 제어를 통해 구현할 수도 있습니다.
캐스케이드 롤백
데이터베이스 시스템에서는 트랜잭션(T1)으로 인해 장애가 발생하여 롤백을 수행해야 할 때 캐스케이드 롤백이 발생합니다.T1의 동작에 의존하는 다른 트랜잭션도 T1의 장애로 인해 롤백되어야 하므로 캐스케이드 효과가 발생합니다.즉, 하나의 트랜잭션이 실패하면 많은 트랜잭션이 실패하게 됩니다.
실용적인 데이터베이스 복구 기술을 통해 캐스케이드리스 롤백이 보증되므로 캐스케이드 롤백은 바람직하지 않습니다.계단식 롤백은 dba에 의해 스케줄링됩니다.
SQL
SQL은 데이터베이스에 액세스, 업데이트 및 조작하는 데 사용되는 언어의 일종인 구조화된 쿼리 언어를 말합니다.SQL에서는ROLLBACK
마지막 이후의 모든 데이터를 변경하는 명령어입니다.BEGIN WORK
, 또는START TRANSACTION
Relational Database Management Systems(RDBMS; 릴레이셔널 데이터베이스 관리 시스템)에 의해 폐기되므로 데이터 상태가 [2]변경되기 전의 상태로 "롤백"됩니다.
A ROLLBACK
스테이트먼트에서는, 사용중의 기존의 세이브 포인트도 해방됩니다.
대부분의 SQL 방언에서는ROLLBACK
는 접속에 고유합니다.즉, 같은 데이터베이스에 2개의 접속이 확립되어 있는 경우,ROLLBACK
는, 다른 접속에는 영향을 주지 않습니다.이것은 적절한 동시성을 위해 필수적이다.
「 」를 참조해 주세요.
메모들
- ^ "Database Rollback – What and Why". 3 November 2019. Retrieved 16 April 2022.
- ^ Ben Richardson (26 December 2019). "Rollback SQL: Rolling back transactions via the ROLLBACK SQL query". Retrieved 16 April 2022.
레퍼런스
- Ramez Elmasri (2007). Fundamentals of Database Systems. Pearson Addison Wesley. ISBN 978-0-321-36957-4.
- "ROLLBack Transaction", Microsoft SQL Server.
- "Sql 명령", MySQL.