![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbBlCms%2FbtrSUAtRoUT%2FvQvS32mRJV1wr2073jxk4k%2Fimg.png)
[Database] DBA급 개발자로 - #20 Database Recovery
2022. 12. 5. 15:14
Database/DBA급 개발자로
이전 포스팅에서는 DBMS의 정책(steal, force policy)에 따라 데이터를 디스크에 어느 시점에 저장하는지와 WAL에 대해 간단히 살펴봤습니다. 이번 포스팅에서는 로그를 활용해서, 특히 WAL(Write Ahead Log)를 활용해서 어떻게 복구를 수행하는지 살펴보겠습니다. WAL(Write Ahead Log) WAL 기록 방법 우선 WAL을 활용한 데이터베이스에서는 변경사항이 어떻게 기입되는지 살펴보겠습니다. WAL에는 다음과 같은 로그를 추가합니다. 새로운 트랜잭션이 시작되면 WAL에 로그를 기입합니다. 트랜잭션이 종료되면 로그를 기입합니다. WAL에 기입된 각각의 로그는 transaction Id, Object Id, 이전 값과 변경 이후의 값을 포함합니다. A의 값이 1이고 B의 값이..