방법: 지정 시간 복원(Transact-SQL)
이 항목에서는 지정 시간으로 복원하는 방법에 대해 설명합니다.
시간을 지정하여 복원하려면
NORECOVERY 옵션을 사용하여 RESTORE DATABASE 문을 실행합니다.
RESTORE LOG 문을 실행하여 각 로그 백업을 적용하며 다음을 지정합니다.
- 트랜잭션 로그가 적용될 데이터베이스의 이름
- 트랜잭션 로그 백업을 복원하는 백업 장치
- RECOVERY 및 STOPAT 옵션. 지정된 시간이 트랜잭션 로그에서 수용하는 시간을 초과하는 경우와 같이 트랜잭션 로그 백업이 요청한 시간을 포함하지 않을 경우 경고가 생성되고 데이터베이스는 복구되지 않은 상태로 남습니다.
예
다음 예에서는 AdventureWorks
데이터베이스를 12:00 AM on April 15, 2005
현재의 상태로 복원합니다. 복원 시퀀스에서는 NORECOVERY
옵션을 사용하여 전체 데이터베이스 백업을 설치하고 3개의 로그 백업을 적용하며 각 RESTORE LOG
문에 RECOVERY
및 STOPAT
옵션을 지정합니다. 백업 장치는 AdventureWorksBackups
라는 논리적 백업 장치입니다.
중요: |
---|
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)