У меня есть база данных, и я хочу принудительно выполнить восстановление поверх нее.
Проверяю вариант:
Но, как и ожидалось, SSMS не может перезаписать существующую базу данных.
Конечно, мне не нужны разные имена файлов; я бы хотел перезаписывать существующая база данных.
Как принудительно восстановить существующую базу данных?
И для поискового робота Google:
Файл "% s" заявлен "% s" (4) и "% s" (3). Предложение WITH MOVE можно использовать для перемещения одного или нескольких файлов.
RESTORE DATABASE аварийно завершает работу. (Microsoft SQL Server, ошибка: 3176)
Сценарий (до того, как я удалил базу данных, потому что мне нужно было это сделать) был:
RESTORE DATABASE [HealthCareGovManager]
FILE = N'HealthCareGovManager_Data',
FILE = N'HealthCareGovManager_Archive',
FILE = N'HealthCareGovManager_AuditLog'
FROM DISK = N'D:\STAGING\HealthCareGovManager10232013.bak' WITH FILE = 1,
MOVE N'HealthCareGovManager_Data' TO N'D:\CGI Data\HealthCareGovManager.MDF',
MOVE N'HealthCareGovManager_Archive' TO N'D:\CGI Data\HealthCareGovManager.ndf',
MOVE N'HealthCareGovManager_AuditLog' TO N'D:\CGI Data\HealthCareGovManager.ndf',
MOVE N'HealthCareGovManager_Log' TO N'D:\CGI Data\HealthCareGovManager.LDF',
NOUNLOAD, REPLACE, STATS = 10
Я использовал пользовательский интерфейс для удаления существующей базы данных, чтобы я мог использовать пользовательский интерфейс для сила ан перезаписывать (не) существующей базы данных.
Надеюсь, можно найти ответ, чтобы следующий парень может иметь ответ.
Нет, никто не был в контексте базы данных (сообщение об ошибке от других подключений сильно отличается от этой ошибки, и я увидел эту ошибку только после того, как убил другие подключения).
У вас есть 2 файла базы данных, которые пытаются восстановить в один и тот же физический файл.
MOVE N'HealthCareGovManager_Archive' TO N'D:\CGI Data\HealthCareGovManager.ndf',
MOVE N'HealthCareGovManager_AuditLog' TO N'D:\CGI Data\HealthCareGovManager.ndf',
Измените один из этих физических путей, и ваша ошибка исчезнет.
Похоже, вы пытаетесь записать два файла (HealthCareGovManager_Archive
и HealthcareGovManager_AuditLog
) в тот же целевой файл (D: \ CGI Data \ HealthCareGovManager.ndf).
Они должны перейти в отдельные файлы, иначе SQL Server столкнется с проблемой использования файла, как вы видите.