다음을 통해 공유


데이터를 복원하지 않고 데이터베이스 복구(Transact-SQL)

적용 대상: SQL Server

일반적으로 SQL Server 데이터베이스의 모든 데이터는 데이터베이스를 복구하기 전에 복원됩니다. 그러나 복원 작업은 실제로 백업을 복원하지 않고 데이터베이스를 복구할 수 있습니다. 예를 들어 데이터베이스와 일치하는 읽기 전용 파일을 복구하는 경우입니다. 이를 복구 전용 복원이라고 합니다. 오프라인 데이터가 데이터베이스와 이미 일치하고 사용 가능한 상태로만 만들면 되는 경우 복구 전용 복원 작업은 데이터베이스 복구를 완료하고 데이터를 온라인으로 전환합니다.

복구 전용 복원은 전체 데이터베이스 또는 하나 이상의 파일 또는 파일 그룹에 대해 수행될 수 있습니다.

복구 전용 데이터베이스 복원

복구 전용 데이터베이스 복원은 다음과 같은 경우에 유용할 수 있습니다.

  • 복원 시퀀스에서 마지막 백업을 복원할 때 데이터베이스를 복구하지 않았고, 이제 데이터베이스를 복구하여 온라인 상태로 만들려고 합니다.

  • 데이터베이스가 대기 모드에 있으므로 다른 로그 백업을 적용하지 않고 데이터베이스를 업데이트할 수 있도록 만들고자 합니다.

복구 전용 데이터베이스 복원의 RESTORE 구문은 다음과 같습니다.

RESTORE DATABASE *database_name* WITH RECOVERY

참고 항목

FROM =<backup_device> 절은 백업이 필요 없는 복구 전용 복원에는 사용되지 않습니다.

예제

다음 예제에서는 데이터를 복원하지 않고 복원 작업에서 AdventureWorks2022 샘플 데이터베이스를 복구 합니다.

-- Restore database using WITH RECOVERY.  
RESTORE DATABASE AdventureWorks2022  
   WITH RECOVERY  

복구 전용 파일 복원

복구 전용 파일 복원은 다음과 같은 상황에서 유용할 수 있습니다.

데이터베이스가 증분 복원됩니다. 주 파일 그룹의 복원이 완료된 후 하나 이상의 복원되지 않은 파일이 새 데이터베이스 상태와 일치하는 경우입니다. 이는 이 파일이 읽기 전용이었기 때문일 수 있습니다. 이러한 파일은 복구만 하면 되며 따로 데이터를 복사할 필요가 없습니다.

복구 전용 복원 작업은 오프라인 파일 그룹의 데이터를 온라인 상태로 만듭니다. 데이터 복사, 다시 실행 또는 실행 취소 단계가 발생하지 않습니다. 복원 단계에 대한 자세한 내용은 복원 및 복구 개요(SQL Server)를 참조하세요.

복구 전용 파일 복원의 RESTORE 구문은 다음과 같습니다.

RESTORE DATABASE *database_name* { FILE **=**_logical_file_name_ | FILEGROUP **=**_logical_filegroup_name_ }[ **,**...*n* ] WITH RECOVERY

예제

다음 예에서는 SalesGroup2데이터베이스의 보조 파일 그룹 Sales 에 있는 파일의 복구 전용 파일 복원에 대해 설명합니다. 기본 파일 그룹은 이미 증분 복원의 초기 단계로 복원되었으며 SalesGroup2은 복원된 주 파일 그룹과 일치합니다. 이 파일 그룹을 복구하고 파일 그룹을 온라인 상태로 만들려면 다음과 같은 단일 문만 필요합니다.

RESTORE DATABASE Sales FILEGROUP=SalesGroup2 WITH RECOVERY;  

복구 전용 복원을 통한 증분 복원 시나리오 완료의 예

단순 복구 모델

전체 복구 모델

참고 항목

온라인 복원(SQL Server)
증분 복원(SQL Server)
파일 복원(단순 복구 모델)
파일 복원(전체 복구 모델)
RESTORE(Transact-SQL)
복원 및 복구 개요(SQL Server)