반응형
MSSQL Database에서 특정 시점으로 Data를 복원하는 방법에 대한 설명입니다.
MSSQL Database 특정 시점 복원
- 전체 또는 대량 로그 복구 모델을 사용할 때 사용 가능한 방법입니다.
- 지정된 시간은 항상 로그 백업에서 복원할 수 있습니다.
- 복원 순서의 모든 RESTORE LOG 문에서 같은 STOPAT 절에 대상 시간이나 트랜잭션을 지정해야 합니다.
- 지정시간 복원을 수행하려면, 종료 지점이 대상 복원 시간보다 빠른 전체 데이터베이스 백업을 복원 후 가능합니다.
- 복구 지점은 time에 지정된 datetime값 또는 그전에 발생한 최근 트랜잭션 commit입니다.
SQL Server Management Studio 복원 방법
1. database에서 복원을 click 합니다.
2. device 선택하세요.
3. add를 click 합니다.
4. backup 받을 파일을 선택합니다.
5. OK를 click 합니다.
6. 왼쪽에서 Options를 click 합니다.
7. Restore with NORECOVERY 선택합니다.
8. OK를 click 합니다.
9. Transaction Log를 선택합니다.
10. From device를 선택합니다.
11. add를 click 합니다.
12. Transaction Log 파일을 선택합니다.
13. OK를 click 합니다.
14. 특정 시점까지 복원하기 위해서 Point in time 선택합니다.
15. 복원 시점의 시간을 선택합니다.
16. OK를 click 합니다.
17. 복원을 완료했습니다.
Transact-SQL 사용 복원 방법
Transact-SQL 이용하여 복원하는 방법입니다.
RESTORE DATABASE aurumGuideDB
FROM DISK = 'C:\aurumGuideBackup\aurumGuideFullBackup.bak'
WITH NORECOVERY;
RESTORE DATABASE aurumGuideDB
FROM DISK = 'C:\aurumGuideBackup\aurumGuideTrnBackup1.bak'
WITH RECOVERY , STOPAT = 'Apr 15, 2024 12:00 AM';
- 계속 복원 중일 때는 아래 명령어를 사용하세요.
- 이유는 시간을 잘못 입력하는 경우 발생합니다.
- 복원에 대한 설명은 링크를 참고 하세요.
- https://aurumguide.tistory.com/124
RESTORE DATABASE aurumGuideDB WITH RECOVERY;
반응형