본문 바로가기
Programming 개발은 구글로/Database

[Database] 불완전 복구 방법 4가지 유형

by 40대직장인 2022. 4. 26.

불완전 복구 방법 4가지 유형

 

1. 4가지 불완전 복구 유형의 차이점

 1.1. 시간 기반 불완전 복구

   - until time: 사용자 의지에 의해 과거 특정 시점까지를 복구하는 방법

 

 1.2. 취소기반 불완전 복구

   - until cancel: 아카이브 파일을 순차적으로 적용하다가 더 이상 적용할 아카이브 파일이 없어서 cancel이 될 때까지

      복구

   - 완전 복구를 수행하고 싶어도 백업 데이터의 유실로 인해 불완전 복구를 수행할 수밖에 없는 경우에 해당된다.

     결론적으로 백업 데이터만 가지고 복구작업을 수행해야 하기 때문에 모든 데이터가 과거 특정 시점으로만

     복구될 수밖에 없다.

 

 1.3. 변경기반 불완전 복구

   - until change SCN: 과거 특정 SCN 번호를 가진 시점까지의 복구

 

 1.4. 컨트롤 파일 및 Redo-log의 유실

   - until using backup controlfile: 이전 control file 복구

 2. 시간 기반 불완전 복구와 관련된 기타 솔루션

 2.1. 시간 기반 불완전 복구

   - 사용자의 실수로 인해 해당 테이블의 데이터가 변경되어 데이터베이스의 신뢰성이 깨지는 경우 데이터베이스를

     변경 이전 상태로 복구하기 위해 사용되는 복구방법이다.

   - 불완전 복구방법에서는 특정 파일만 재설치해서는 모든 데이터를 과거 시점으로 되돌릴 수 없기 때문에 반드시 

      모든 데이터를 과거 시점으로 복구해야 한다.

   - 불완전 복구방법은 반드시 오프라인 백업을 수행해야 한다. 불완전 복구되기 이전에 백업되었던 오프라인 백업은

     이전에 데이터베이스 상태 정보를 저장하고 있고, 현재 시점은 alter database open resetlog 명령문에 의해

    모든 상태 정보가 초기화되었기 때문에 만약 현재 시점에서 데이터베이스에 장애가 발생한다면 이전 상태 정보를

     가지고 있는 오프라인 백업 데이터로는 더 이상 복구작업에 사용할 수 없게 된다.

 

 2.2. 취소 기반 불완전 복구

   - 백업 데이터 파일과 아카이브 파일의 보관 및 관리상의 문제로 인해 복구를 정상적으로 수행하지 못하는 경우가
     발생될 때
 이때, 사용 가능한 백업 데이터를 이용하여 복구할 수 있는 시점까지만이라도 최대한 복구하는 복구방법이다.

 

 2.3. 변경 기반 불완전 복구

   - 하나의 네트워크 상에 여러 개의 데이터베이스 시스템을 가진 분산 데이터베이스 환경에서 하나의 데이터베이스가

     특정 SCN 번호 시점까지 복구되어야 할 때 다른 데이터베이스도 같은 시점으로 반드시 복구되어야 하는 경우 적용된다.

 

 2.4. 컨트롤 파일 및 Redo-log의 유실

   - 데이터베이스의 모든 상태 정보가 저장되어 있는 컨트롤 파일이 삭제되었기 때문에 컨트롤 파일은 복구되었지만

     상태 정보는 복구되지 않았으므로 SCN 정보가 초기화되어야 한다. 이로 인해 불완전 복구이다.

 

 2.5. 플래시백

   - 해당 테이블에 대해 UPDATE, INSERT, DELETE문을 실행하게 되면 모든 변경 전 데이터들은 언두 세그먼트에

     남게 된다. 이때, 저장된 변경 전 데이터들은 언두 세그먼트로부터 바로 삭제되는 것이 아니라 일정 시간 동안 계속

     남아 있게 되는데 바로 이 데이터들을 필요에 따라 참조하거나 복구 시 사용하는 기능이다.

 

 

 

댓글