체크포인트2 DB - 백업 복구 WAL 로그 백업과 복구 (WAL, REDO·UNDO, 체크포인트)은행 시스템이 입금 처리 도중 정전으로 멈췄다고 하자. 돈은 빠져나갔는데 입금 기록이 디스크에 닿기 전이었다면, 그 돈은 어디로 사라질까. 데이터베이스가 신뢰받는 이유는 바로 이런 장애 상황에서도 데이터를 한 푼도 잃지 않고, 멈춘 지점에서 정확히 복구하는 능력에 있다. 그 능력의 핵심 엔진이 로그 기반 복구이며, 그중에서도 거의 모든 현대 데이터베이스가 쓰는 기법이 WAL(Write-Ahead Logging)이다. 본 글은 트랜잭션 장애 복구의 원리, WAL의 핵심 규칙, REDO와 UNDO의 차이, 그리고 복구 시간을 줄이는 체크포인트를 세심하게 정리한다(출처: PostgreSQL 공식 문서 — Write-Ahead Logging (WAL)). 제.. 2026. 5. 26. DB - 트랜잭션 ACID 트랜잭션 (ACID, 커밋, 로그)데이터베이스가 "신뢰할 수 있는 저장소"인 이유는 트랜잭션(Transaction)과 ACID 속성이 받쳐 주기 때문이다. 송금 한 번이 중간에 끊겨도 돈이 사라지지 않고, 동시에 1만 명이 같은 좌석을 예약해도 한 사람만 성공한다. 이 모든 보장의 토대가 트랜잭션 메커니즘이다. 본 글은 트랜잭션의 정의·ACID 4대 속성·트랜잭션 상태 다이어그램·WAL(Write-Ahead Logging) 기반 복구 메커니즘을 세심하게 정리한다(출처: 위키백과 — ACID). 제가 학교 캡스톤에서 결제 처리 코드를 트랜잭션 없이 UPDATE balance ... ; INSERT INTO ledger ... 두 줄로 짰다가 한 줄만 성공한 상태에서 서버가 죽어 잔액과 장부가 어긋나는 사고.. 2026. 5. 15. 이전 1 다음