файл mdf не может быть перезаписан при восстановлении базы данных в SQL Server

Масса md5summing сделает задание проверки целостности. Я не собираюсь размышлять относительно причины повреждения, действительно нет достаточной информации здесь, чтобы поставить разумный диагноз.

21
задан 8 March 2011 в 09:34
5 ответов

При восстановлении базы данных SQL Server, по умолчанию, попытается восстановить все файлы данных и файлы журнала к их исходным местоположениям. Так как те исходные местоположения все еще используются исходной базой данных ("A"), сбои восстановления. Необходимо использовать С пунктом ПЕРЕМЕЩЕНИЯ для определения новых местоположений для всех файлов в базе данных.

RESTORE DATABASE B FROM DISK = 'A.bak'
WITH MOVE 'DataFileLogicalName' TO 'C:\SQL Directory\DATA\B.mdf',
MOVE 'LogFileLogicalName' TO 'C:\SQL Directory\DATA\B.ldf',
REPLACE --Needed if database B already exists

Что-то как этот так или иначе. Используйте RESTORE FILELISTONLY ОТ ДИСКА... для наблюдения логических имен файлов в резервном копировании при необходимости.

19
ответ дан 2 December 2019 в 20:05

При восстановлении резервного копирования, можно указать файлы данных для восстановления.

Посмотрите здесь и здесь. Можно использовать опцию "Restore the database files as" и флаг "Overwrite the existing database".

0
ответ дан 2 December 2019 в 20:05

Вы используете опцию REPLACE, или в команде TSQL, или как установленный флажок? С другой стороны, можно переименовать файлы и назвать базу данных чем-то еще.

Вы также найдете немного трудным восстановить по базе данных, которая используется....., необходимо будет уничтожить процессы с помощью базы данных; ИЛИ отбросьте/удалите базу данных сначала, закрыв соединения (это является, вероятно, самым легким); ИЛИ набор база данных, которую Вы хотите перезаписать во что-то как ограниченный непривилегированный режим с откатом, непосредственным так, надо надеяться, только DBAs, может использовать; ИЛИ даже остановите SQL Server и перезапустите его - надо надеяться, получение восстановления, прокручивающегося, прежде чем любой/что-либо будет использовать ту базу данных.

PS берет резервное копирование базы данных, которую Вы собираетесь перезаписать на всякий случай.

0
ответ дан 2 December 2019 в 20:05

Если кто-то ищет решение в графическом интерфейсе Management Studio после того, как уже использовал страницу Параметры и активировал Перезаписать существующий база данных (WITH REPLACE) опция :

Просто щелкните столбец Восстановить как и измените имена файлов *. mdf и *. ldf файл.

0
ответ дан 2 December 2019 в 20:05

WITH MOVE / MOVE - правильное решение в T- SQL .

Кстати, если вы хотите использовать графический интерфейс, вы можете перейти к Files и переименовать:

  • a.MDF
  • a.NDF
  • a. LDF

-

  • b.MDF
  • b.NDF
  • b.LDF

enter image description here

11
ответ дан 2 December 2019 в 20:05

Теги

Похожие вопросы