네이버 검색결과

http://blog.naver.com/ttltweety?Redirect=Log&logNo=60107917647

위의 링크에서 내용을 발췌해 복원에 시도하였지만 기존에 DB명이 무엇인지 데이터, 로그 파일명이 무엇인지 모르는 상태에서는

스크립트로 처리하는 부분에 어려움이 있었다.

bak파일이 있다면 아래 그림처럼 데이터베이스 복원에서 처리 하면 되긴하겠지만

왠지 스크립트로 처리 하고 싶은 욕구가 생겨서 시도 해 보았다.

 

 

 

 

 

다음은 처리한 스크립트의 예제이다.

 

 

--Check .bak FileInfo
RESTORE HEADERONLY FROM DISK = 'D:\MSSQL\DB_BACKUP\XXXXX.bak'   -- DB 백업파일이 있는 위치
RESTORE FILELISTONLY FROM DISK = 'D:\MSSQL\DB_BACKUP\XXXXX.bak'  -- DB 백업파일이 있는 위치
  

--Restore the Database
RESTORE DATABASE DB_NAME   -- 백업받은 DB의 명칭
FROM DISK= 'D:\MSSQL\DB_BACKUP\XXXXX.bak'   -- DB 백업파일이 있는 위치
WITH Move 'MDF_DATA' TO 'D:\MSSQL\DB_BACKUP\XXXXX.mdf',      -- 백업받은 DB의 MDF 데이터 파일명
 Move 'LDF_LOG' TO 'D:\MSSQL\DB_BACKUP\XXXX.ldf'   -- 백업받은 DB의 LDF 로그 파일명

 

 

 

DB복원에 앞서 백업할때 어떤 정보의 DB내용을 갖고 있는지 잘 확인해서 관리하는 것이 중요할거 같단 생각이 많이 들었다.

사실 오늘 이 작업도 다른 팀에서 백업을 받아와 복원한 상황이었던 터라 사전에 미리 말하지 못한 부분도 있고

사실 이전엔 백업, 복원 뭐 이런거 굳이 신경을 안써서 그랬을수도 있고 암튼 오늘 시원하게 복원할 수 있어 개운하다. ㅋㅋ


 


WRITTEN BY
테네시왈츠
항상 겸손하게 항상 새롭게 항상 진실하게

,