다음을 통해 공유


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

적용 대상: 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 파일 그룹과 관련된 트랜잭션의 롤백이 지연되었음을 나타냅니다. 정기적인 작업은 계속할 수 있지만 이러한 트랜잭션에 의해 잠금이 유지되고 롤백이 완료될 때까지 로그 잘림이 발생하지 않습니다.

    2번째 복원 시퀀스에서 데이터베이스 관리자는 파일 그룹 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)