4

У меня есть база данных с двумя группами файлов:Как восстановить данные в базах данных группы файлов?

1- PrimaryFileGroup 
2- ArchiveFileGroup 

Теперь у меня есть резервная копия с первой файловой группы: Primary.bak. и восстановить с помощью нижеприведенного сценария:

USE [master] 
GO 
ALTER DATABASE MyDatabase 
SET SINGLE_USER 
    WITH 

ROLLBACK IMMEDIATE; 

RESTORE DATABASE MyDatabase 
    FILEGROUP = 'PRIMARY' 
    FROM DISK = 'C:\Primary.bak' 
    WITH PARTIAL, REPLACE 
GO 

ALTER DATABASE SaleTabriz 
SET MULTI_USER 

Он успешно восстанавливает. но мои еще столы, которые находятся в ArchiveFileGroup, переходят в с ниже ошибкой, а я хотел бы, чтобы выбрать из них:

Обработчик запросов не может подготовить план для таблицы или представлений «клиента» потому что таблица находится в файловой группе, которая не является онлайн

Что моя ошибка?

+0

Вам нужно разместить намного больше деталей, в идеале сценарий, который воспроизводит это. – usr

+0

У меня нет сценария. все сценарии относятся к Мастеру архивации и восстановления файлов. –

+0

Проверьте [this] (http://stackoverflow.com/q/2055021) и [это] (https://social.msdn.microsoft.com/Forums/sqlserver/en-US/56d24cc2-526a-4c60-8870 -e2344cec8ef0), может быть, вы найдете что-то полезное. –

ответ

-1
RESTORE DATABASE MyDatabase 
    FROM DISK = 'C:\Primary.bak', 
    FILEGROUP = 'PRIMARY', 
    FROM DISK = 'C:\Secondary.bak', 
    FILEGROUP = 'SECONDARY' 
    WITH PARTIAL, REPLACE ; 
GO 
+0

, к сожалению, ваш скрипт ошибочен (исключение: «FILEGROUP» не является признанным параметром типа устройства.) Пожалуйста, проверьте, затем ответьте. –

0

К сожалению, у меня нет достаточного количества повторений Yest размещать в качестве комментария, следовательно, ответ.

Вы пробовали приведение вторичных файловых групп онлайн:

alter database xxxDB modify file (name = 'xxxDB_File1', online) 

Примечание: Если файловая группа фактически в автономном режиме, я помню, что если это не работает, единственный другой способ, которым я знаю, чтобы установить файловую группу онлайн, восстанавливая файл из резервной копии.

+0

Когда я запустил этот скрипт, появляется это исключение: ONLINE 'не является признанным параметром CREATE/ALTER DATABASE. –

+0

Извинения - я работал из памяти, но я только что вернулся и проверил, откуда я получил информацию, когда я это сделал, и нашел URL (http://www.sqlnotes.info/2013/05/09/bring-offline- file-online-modify-sql-server-metadata /). Убедитесь, что у вас есть план восстановления в случае, если что-то пойдет не так, как это «недокументированная функция». Дайте мне знать, как вы идете. – hamish