예제: 데이터베이스의 증분 복원(전체 복구 모델)

적용 대상:SQL Server

증분 복원 시퀀스는 주 파일 그룹에서 시작하여 모든 읽기/쓰기가 가능한 모든 보조 파일 그룹의 순서로 파일 그룹 수준에서 데이터베이스를 복원하고 복구합니다.

이 예에서 adb 데이터베이스는 재해 발생 후 새 컴퓨터에 복원됩니다. 데이터베이스에서 전체 복구 모델을 사용하고 있으므로 복원이 시작되기 전에 데이터베이스의 비상 로그 백업을 만들어야 합니다. 재해가 발생하기 전에 모든 파일 그룹은 온라인 상태입니다. 파일 그룹 B 는 읽기 전용입니다. 모든 보조 파일 그룹이 복원되어야 합니다. 단, 복원은 A (가장 중요), C, B와 같은 중요도 순으로 이루어져야 합니다. 이 예에서는 비상 로그 백업을 포함하여 4개의 로그 백업이 있습니다.

비상 로그 백업

데이터베이스를 복원하기 전에 데이터베이스 관리자는 비상 로그 백업을 만들어야 합니다. 데이터베이스가 손상되었으므로 비상 로그 백업을 만들려면 NO_TRUNCATE 옵션을 사용해야 합니다.

BACKUP LOG adb TO tailLogBackup WITH NORECOVERY, NO_TRUNCATE  

비상 로그 백업은 다음 복원 시퀀스에서 마지막으로 적용되는 백업입니다.

복원 시퀀스

참고

온라인 복원 시퀀스의 구문은 오프라인 복원 시퀀스의 구문과 동일합니다.

  1. 주 파일 그룹과 보조 파일 그룹 A를 부분 복원합니다.

    RESTORE DATABASE adb FILEGROUP='Primary' FROM backup1   
       WITH PARTIAL, NORECOVERY  
    RESTORE DATABASE adb FILEGROUP='A' FROM backup2   
       WITH NORECOVERY  
    RESTORE LOG adb FROM log_backup3 WITH NORECOVERY  
    RESTORE LOG adb FROM log_backup4 WITH NORECOVERY  
    RESTORE LOG adb FROM log_backup5 WITH NORECOVERY  
    RESTORE LOG adb FROM tailLogBackup WITH RECOVERY  
    
  2. 파일 그룹 C를 온라인 복원합니다.

    이때 주 파일 그룹과 보조 파일 그룹 A 는 온라인입니다. 파일 그룹 BC 의 모든 파일은 복구가 보류된 상태이며 파일 그룹은 오프라인입니다.

    1단계에서 마지막 RESTORE LOG 문의 메시지는 파일 그룹 C 를 사용할 수 없어 이 파일 그룹에 관련된 트랜잭션 롤백이 지연되었음을 나타냅니다. 일반적인 작업은 계속할 수 있지만 이러한 트랜잭션에 의해 잠금이 유지되며 롤백이 완료되기 전에는 로그 잘림이 발생하지 않습니다.

    두 번째 복원 시퀀스에서 데이터베이스 관리자는 파일 그룹 C를 복원합니다.

    RESTORE DATABASE adb FILEGROUP='C' FROM backup2a WITH NORECOVERY  
    RESTORE LOG adb FROM log_backup3 WITH NORECOVERY  
    RESTORE LOG adb FROM log_backup4 WITH NORECOVERY  
    RESTORE LOG adb FROM log_backup5 WITH NORECOVERY  
    RESTORE LOG adb FROM tailLogBackup WITH RECOVERY  
    

    이 시점에서 주 파일 그룹 및 파일 그룹 AC 가 온라인입니다. 파일 그룹 B 의 파일은 복구가 보류된 상태이며 파일 그룹은 오프라인입니다. 지연된 트랜잭션이 해결되고 로그 잘림이 발생합니다.

  3. 파일 그룹 B를 온라인 복원합니다.

3번째 복원 시퀀스에서 데이터베이스 관리자는 파일 그룹 B를 복원합니다. 파일 그룹 B 는 파일 그룹이 읽기 전용이 된 후 백업했으므로 복구 중에 롤포워드할 필요가 없습니다.

RESTORE DATABASE adb FILEGROUP='B' FROM backup2b WITH RECOVERY  

이제 모든 파일 그룹이 온라인입니다.

추가 예

참고 항목

BACKUP(Transact-SQL)
온라인 복원(SQL Server)
트랜잭션 로그 백업 적용(SQL Server)
RESTORE(Transact-SQL)
증분 복원(SQL Server)