SMO: восстановление в другую БД

Я прочитал дюжину разных блогов, а также прочитал примеры MSDN, и они просто не работают для меня.

В конечном итоге я пытаюсь автоматизировать перемещение БД из нашего производственного экземпляра в наш экземпляр dev или в другое направление.

Подход, который я выбрал, таков:

резервное копирование / восстановление во временную базу данных detach temp DB скопируйте mdf и ldf файлы в другой экземпляр Присоедините.

Я застрял на 1 и не могу понять почему. Все, что я прочитал, утверждает, что это должно работать.

ПРИМЕЧАНИЕ: я поставилdbName в БД я хочу восстановить. Я также установилrestore.Database = dbName, гдеrestore является экземпляромRestore класс вsmo пространство имен.

mdf.LogicalFileName = dbName;
mdf.PhysicalFileName = String.Format(@"{0}\{1}.mdf", server.Information.MasterDBPath, dbName);
ldf.LogicalFileName = dbName + "_log";
ldf.PhysicalFileName = String.Format(@"{0}\{1}.ldf", server.Information.MasterDBPath, dbName);

restore.RelocateFiles.Add(mdf);
restore.RelocateFiles.Add(ldf);
restore.SqlRestore(server);

Это исключение, которое я получаю:

Файл 'D: \ MSSQL.MIQ_Dev \ MSSQL.2 \ MSSQL \ Data \ MIQDesign2Detach.mdf' нельзя перезаписать. Он используется базой данных 'MIQDesignTest2'.
Файл 'MIQDesign' нельзя восстановить в 'D: \ MSSQL.MIQ_Dev \ MSSQL.2 \ MSSQL \ Data \ MIQDesign2Detach.mdf'. Используйте WITH MOVE для определения правильного местоположения файла.
Файл 'D: \ MSSQL.MIQ_Dev \ MSSQL.2 \ MSSQL \ Data \ MIQDesign2Detach.ldf' нельзя перезаписать. Он используется базой данных 'MIQDesignTest2'.
File 'MIQDesign_log' нельзя восстановить в 'D: \ MSSQL.MIQ_Dev \ MSSQL.2 \ MSSQL \ Data \ MIQDesign2Detach.ldf'. Используйте WITH MOVE для определения правильного местоположения файла.
Проблемы были определены при планировании оператора RESTORE. Предыдущие сообщения содержат подробности.
ВОССТАНОВЛЕНИЕ БАЗЫ ДАННЫХ завершается ненормально.

Почему это пытается переписать оригинальный МДФ? Разве неRelocateFiles материал должен указывать, что вы хотите сохранить его вдруго физическое имя файла?

Ответы на вопрос(2)

Ваш ответ на вопрос