다음을 통해 공유


방법: 지정 시간 복원(Transact-SQL)

이 항목에서는 지정 시간으로 복원하는 방법에 대해 설명합니다.

시간을 지정하여 복원하려면

  1. NORECOVERY 옵션을 사용하여 RESTORE DATABASE 문을 실행합니다.

  2. RESTORE LOG 문을 실행하여 각 로그 백업을 적용하며 다음을 지정합니다.

    • 트랜잭션 로그가 적용될 데이터베이스의 이름
    • 트랜잭션 로그 백업을 복원하는 백업 장치
    • RECOVERY 및 STOPAT 옵션. 지정된 시간이 트랜잭션 로그에서 수용하는 시간을 초과하는 경우와 같이 트랜잭션 로그 백업이 요청한 시간을 포함하지 않을 경우 경고가 생성되고 데이터베이스는 복구되지 않은 상태로 남습니다.

다음 예에서는 AdventureWorks 데이터베이스를 12:00 AM on April 15, 2005 현재의 상태로 복원합니다. 복원 시퀀스에서는 NORECOVERY 옵션을 사용하여 전체 데이터베이스 백업을 설치하고 3개의 로그 백업을 적용하며 각 RESTORE LOG 문에 RECOVERYSTOPAT 옵션을 지정합니다. 백업 장치는 AdventureWorksBackups라는 논리적 백업 장치입니다.

ms179451.note(ko-kr,SQL.90).gif중요:
AdventureWorks 데이터베이스는 단순 복구 모델을 사용합니다. 로그 백업을 허용하려면 전체 데이터베이스 백업을 수행하기 전에 ALTER DATABASE AdventureWorks SET RECOVERY FULL을 사용하여 데이터베이스에서 전체 복구 모델을 사용하도록 설정해야 합니다.
-- Restore the full database backup.
RESTORE DATABASE AdventureWorks
   FROM AdventureWorksBackups 
   WITH NORECOVERY;
GO
RESTORE LOG AdventureWorks
   FROM AdventureWorksBackups
   WITH RECOVERY, STOPAT = 'Apr 15, 2005 12:00 AM';
GO
RESTORE LOG AdventureWorks
   FROM AdventureWorksBackups
   WITH RECOVERY, STOPAT = 'Apr 15, 2005 12:00 AM';
GO
RESTORE LOG AdventureWorks
   FROM AdventureWorksBackups
   WITH RECOVERY, STOPAT = 'Apr 15, 2005 12:00 AM';
   GO 

참고 항목

개념

특정 시간으로 복구

관련 자료

RESTORE(Transact-SQL)
RESTORE HEADERONLY(Transact-SQL)

도움말 및 정보

SQL Server 2005 지원 받기