본문 바로가기

DB/MSSQL

[MSSQL]복원 오류 - 미디어 세트 개수 불일치

DB를 백업할 떄 확장자를 걸어줬어야 하는데 걸지 않아서 파일이 로그파일과 BAK파일로 분할된 거 같다.

----------------------------------------------------------------------------------------------------------------

 

방법: 1

 

 

미디어 세트에 2개의 미디어가 있지만 1개만 제공하고 있습니다. 모든 멤버를 제공해야 합니다.

 

백업파일이 2개로 만들어졌는데, 1개만 지정해서 발생한 오류이다.

백업파일이 몇 개로 만들어졌는지 확인하기 위해 아래의 쿼리문을 실행하면 된다.

 

 RESTORE LABELONLY FROM DISK = 'D:\DBA.bak'

 

 

 

FamilyCount가 필요한 백업파일의 개수이다.

두 파일을 지정해야만 정상적으로 파일이 복원된다.

 

 RESTORE DATABASE DBA FILE = N'DBA' FROM

       DISK = N'D:\DB_Backup\DBA.bak',

       DISK = N'D:\DB_Backup\DBA'

 GO

 

 

 

왜 미디어 세트에 2개의 미디어가 생성되었는가?

 

백업할 때 백업할 위치의 파일명에 확장자를 적지 않아 확장자를 포함하여 한개 더 추가하여 백업한 결과 미디어 세트가 2개가 되었다.

대상에 백업할 위치의 개수만큼 미디어 세트의 개수가 늘어난다.

 

 



출처: http://lovedb.tistory.com/272 [More haste, less speed]

 

====================================================================

 

방법 2:

 

"미디어 세트에 2개의 미디어 패밀리가 있지만 1개만 제공하고 있습니다. 모든 멤버를 제공해야 합니다."

오류발생.....

쿼리창에서 다음과 같이 명령을 실행시키셔서 백업 파일 셋트의 수를 확인해 보시기 바랍니다.

 

RESTORE LABELONLY FROM DISK='d:\TestDB1.bak'

위의 명령을 수행한 결과 중, FamilyCount가 백업을 할 때의 파일 (or 미디어)의 수를 의미합니다.

 

다음과 같은 예제로 설명드리겠습니다.

 

--데이터베이스 생성

CREATE DATABASE TestDB

ON (name='data1', filename='d:\data1.mdf')

LOG ON (name='log', filename='d:\log.ldf')

GO

 

--백업 수행(D:\Test1.bak, D:\Test2.bak에 나누어서 백업)

BACKUP DATABASE TestDB TO DISK='d:\TestDB1.bak' , DISK='d:\TestDB2.bak' WITH INIT

GO

 

--기존 데이터베이스 삭제

DROP DATABASE TestDB

GO

즉, TestDB라는 데이터베이스는 TestDB1.bak와 TestDB2.bak 라는 두 개의 파일에 백업이 되었습니다.

사용자 삽입 이미지

 

 








이 백업 파일을 이용해서 복원을 할 경우, 두 개의 파일 모두를 지정해야 제대로 되며, 하나만 지정해서 복원할 경우, 말씀하신 것과 같은 에러가 발생합니다.

사용자 삽입 이미지

 

 

 







사용자 삽입 이미지




 

 

이는 Management Studio에서도 동일합니다.

사용자 삽입 이미지



















 

 

이 경우, 장치 부분에서 나머지 백업 파일을 지정해야 에러 없이 복원이 가능합니다.

사용자 삽입 이미지

 

 

 


















처음에 백업을 받았을 때, 파일 또는 미디어들이 어떻게 설정되어 있는지 확인하시고, 복원시 이를 모두 지정해 주시기 바랍니다.

발줴 :
http://blog.naver.com/mok30224?Redirect=Log&logNo=40050168231

'DB > MSSQL' 카테고리의 다른 글

[MSSQL]데이터 파일(.mdf/.ndf)과 로그파일(.ldf)  (0) 2018.04.13
[MSSQL]LDF/MDF파일 DB복원 방법  (0) 2018.03.18
[MSSQL] 계정 만들기  (0) 2018.03.18
[MSSQL]DB 백업 및 복원  (0) 2018.03.18