DB/[이론]

데이터 복구

씩씩한 IT블로그 2022. 3. 10. 13:41
반응형

데이터복구란?

데이터베이스 운영 도중 예기치 못한 장애가 발생할 경우 데이터베이스 장애 발생 이전으로 일관성과 무결성을 복원하는것

 

데이터베이스 장애 유형

1. 트랜젝션 장애 

    - 논리적 오류 : 내부적은 오류로 트랜젝션 완료 불가

    - 시스템 오류 : Deadlock 등의 오류 조건으로 활성 트랜잭션을 강제로 종료

2. 시스템 장애

    - 전원, 하드웨어, 소프트웨어 등의 고장

    - 시스템 장애로 인해 저장 내용이 영향 받지 않도록 무결성 체크

3. 디스크 장애

    - 디스크 스토리지의 일부 또는 전체가 붕괴

    - 가장 최근의 덤프와 로그를 이용하여 덤프 이후에 완결된 트랜젝션을 재실행

4. 사용자 장애

    - 사용자들의 데이터베이스에 대한 이해 부족으로 발생

    - DBA가 데이터베이스를 관리하다 발생하는 실수 

 

데이터베이스 복구의 기본원리

1. 아카이브 또는 덤프 : 데이터베이스를 다른 저장 장치에 복사하여 저장하는 것

2. 로그 또는 저널 : 데이터베이스가 변경될 때마다 변경되는 데이터의 과거 값과 갱신 값을 별도의 파일에 기록하는것

 

데이터베이스 복구 조치 유형

1. 재수행(REDO)

    - 가장 최근 복사본을 적재한 후 복사본 이후에 일어난 변경만을 로그에 읽어서 재실행

    - 장애 발생 시점을 기준으로 이미 완료된 트랜잭션에 해당

    - 쓰기 연산을 재실행하여 변경된 값을 디스크에 저장

2. 취소(UNDO)

    - 데이터베이스 내용 자체에 손상이 되지 않았지만, 변경중이거나 변경된 내용에 대해 신뢰성 잃은 경우

    - 장애 발생 시점에 진행중이던 트랜잭션(미완료 트랜잭션)에 해당

    - 쓰기 연산을 취소하여 이전 값으로 다시 돌아감

 

복구 기법

반응형