Как восстановить базу данных с 2 mdf и 2 ldf файлами, оставив только 1 mdf/ldf пару?
У меня есть файл.bak (SQL Server 2008), который содержит 2 и 2 файла.
Когда я пытаюсь восстановить базу данных из нее, он создает все 4 из этих файлов.
Я никогда не видел этого раньше, и мне было интересно, как перейти к старой доброй системе с 1 парой файлов (1 мдф /1 лдф)?
Любое понимание двух пар файлов, находящихся в резервной копии, также поможет.
PS: моя установка не имеет файлов Ndf, оба Mdf
2 ответа
Похоже, вам нужно переместить данные из вторичного mdf(не так ли ndf?) В первый. Это все предполагает, что вы сделали восстановление.
Допустим, ваши 2 файла m1
а также m2
,
использование DBCC SHRINKFILE
переместить и очистить ваш ndf.
--move all data out of this file
DBCC SHRINKFILE ('m2', EMPTYFILE )
Скорее всего, вам придется перезапустить SQL Server в однопользовательском режиме. ( источник)
--if trying to delete LDF file, do a Transaction log backup of your DB now
--remove this file from the
ALTER DATABASE DB_NAME_HERE_NO_QUOTES REMOVE FILE m2
Использование нескольких файлов в базе данных помогает распределить базу данных по нескольким дискам.
Вы не можете изменить количество файлов при восстановлении базы данных, но вы можете указать, где файлы будут восстановлены. Проверьте команду RESTORE DATABASE, опции MOVE.
После восстановления базы данных вы можете удалить файлы базы данных. Вы должны сжать файл с возможностью очистить файл. Затем вы можете удалить файл с помощью команды ALTER DATABASE.