2009-07-22 4 views
0

데이터베이스 (SQL 2005 Express)의 mdf 및 ldf를 내 컴퓨터와 SQL 2005 (Developer Edition)에 첨부하여 복사했습니다. 나는 문제를 연구 할 필요가 있기 때문에 원본 컴퓨터에서 전체 로깅을 설정했다.시점으로 복원

이제 SQL Server에 2 개의 데이터베이스가 있으며 방금 첨부 한 DAProd와 방금 만든 DARestore가 있습니다. DAProd의 특정 시점 버전으로 DARestore를 복원하려고합니다. 복원 대화 상자를 열면 원본 드롭 다운에 DAProd가 표시되지 않습니다. 모든 포인터를 부탁드립니다.

감사합니다.

+0

귀하의 질문에 많은 의미가 없습니다. DAProd의 다양한 시점 백업이 필요하며 현재 DB 사본을 다시 연결하지 않아야합니다. –

+0

나는 이것에 초보자입니다. 그래서 DA Prod를 실행중인 시스템에서이 값을 설정할 때 전체 복구를 설정합니다. 한 달 후 전체 백업본을 만들어 내 컴퓨터로 옮겼습니다. DB와 로그 백업을 통해 특정 시점까지 복구 할 필요가 있다고 가정합니다. SQL Server 관리 콘솔에서 새 쿼리를 열 때 db를 선택하면 명령문을 실행할 수 있습니까? – Maky29

답변

4

을 나는 당신이 (전체 및 로그 모두) DAProd의 백업을 가정합니다. DAProd의 사본을 첨부 할 필요가 없으므로 백업 프로세스가 '사본'데이터베이스를 생성 할 수 있습니다. 그러나 당신이 그것을 첨부하면 괜찮습니다, 중요하지 않습니다. 당신이 이후에 발생한 로그 백업을 복구하기 시작

RESTORE DATABASE [DAProd] FROM DISK = '<yourfullbackup>' WITH NORECOVERY; 

다음 :

먼저 당신은 복구를 중지하려는 시간에 순간보다 오래된 DAProd의 가장 최근 전체 백업의 복원을 실행할 전체 백업하지만 하나 하나, 아직 시간의 순간에 앞서 다음과 같습니다

:
RESTORE LOG [DAprod] FROM DISK = 'yournextlog' WITH NORECOVERY; 

지금 당신이 중지 할 시간에 순간을 포함하는 로그를 복원
RESTORE LOG [DAProd] FROM DISK = 'yournextlog' WITH STOPAT = '<timetostop'; 

마지막 단계는 DAProd 데이터베이스를 온라인으로 가져 오는 것입니다. BTW는 귀하의 현재 순간에 어떤 비공개 거래가 롤백 될 것입니다 :

변경 데이터베이스 [DAProd] SET ONLINE;

이제는 원하는 시점에 데이터베이스를 볼 수 있습니다. 인 대기중인 트랜잭션을 롤백하는 경우 으로 표시됩니다.

+0

+1 좋은, succint 설명 –