5 개의 파일 그룹이있는 SQL 서버 데이터베이스가 있습니다. 2 개의 파일 그룹 (하나는 파일 스트림이 포함)을 백업하고 다른 기존 데이터베이스로 복원하려고합니다.다른 데이터베이스에 파일 그룹 복원
답변
무슨 요구하는 것은 당신이 경우 당신은 primary
+ 모든 readwrite
FG + 당신의 readonly
파일 그룹의 복원 simple
복구 모델에 또는 primary
+ 다른 파일 그룹 (들)을 복원 할 수 있습니다 Piecemeal Restores (SQL Server)
입니다 in full
복구 모델. 복원하는 첫 번째 파일 그룹으로
primary
파일 그룹, 그것은 (당신이 + 로그 파일을 기존의 MDF를 가리키는
with move
를 사용해야합니다 당신의
restore
명령) 당신의 "다른 기존의 데이터베이스"기본 데이터 파일을 대체하고 기록합니다 항상 모든 이후의 복원은 다른 파일을 덮어 씁니다. "기존"데이터베이스의 내용은 남아 있지 않으므로 "기존의 다른 데이터베이스"로 복원 할 필요가 없습니다. 복원 한 파일 그룹 만 온라인 상태로 만들 수 있고 데이터베이스는 "기존 데이터베이스"의 나머지 파일에 대해서는 아무 것도 모릅니다. 따라서 다른 데이터베이스 (기존 데이터베이스가 아닌)로 복원하는 것과 똑같습니다. 여기
는
simple
복구 모델
Example: Piecemeal Restore of Only Some Filegroups (Simple Recovery Model)
을에 primary
+ readonly fg
에 대한 복원 시퀀스 예입니다 그리고 여기 Example: Piecemeal Restore of Only Some Filegroups (Full Recovery Model)
필자는 두 개의 데이터베이스 db1 (fg1, fg2, fg3)과 db2 (filegroups fg4, fg5, fg6)를 가지고 있는데, db1에서 fg2를 백업하고 복원하려고한다. db2 –
이미 대답 했으므로 불가능합니다. 모든 단편적인 복원은 기본 파일 그룹의 필수 복원으로 시작됩니다. 그리고 db1의 fg1은이 데이터베이스가 fg1 만 가지고 있다는 것을 알게됩니다 및 fg2. fg4, fg5, fg6은 복원 된 데이터베이스의 일부가 아닙니다 – sepupic
동일한 데이터베이스에 기본 데이터베이스를 복원하지 않고 일부 fg 만 복원 할 수는 있지만 그럴 수는 없습니다. 그리고 다른 db로 복원하면 복원 할 첫 번째 fg는 항상 PRIMARY입니다. – sepupic
당신이 "다른 기존 데이터베이스에"말을 무엇을 의미합니까
full
복구 모델에 대한 예입니다? 모든 복원은 복원 된 파일을 다시 작성합니다. "다른"데이터베이스가 동일한 구조를 갖는 것을 의미합니까? (데이터 파일의 수와 readwrite/readonly 상태를 의미합니까? – sepupic다른 번호와 파일 및 파일 그룹의 이름이있는 다른 데이터베이스 –
해당 데이터베이스로 복원 할 때 아무 파일도 액세스 할 수 없습니다. 기본 mdf 파일은 다시 작성해야하며 새로 복원 된 데이터베이스는 복원 전에 어떤 파일을 가지고 있는지 전혀 알지 못합니다. 백업 된 원래 db의 파일에 대해서만 알 수 있습니다 – sepupic