Резервное копирование и восстановление базы данных SQL-сервера с файловой группой FILESTREAM


8

Я использую SQL Server и имею огромную базу данных с двумя файловыми группами:

  • Основной : который содержит все данные, кроме больших файлов (1 МБ +)
  • FILESTREAM (чтение / запись) : который содержит большие файлы

Теперь сценарий резервного копирования:

  • Каждую пятницу получают полную резервную копию (2 часа ночи)
  • Каждый день недели, кроме пятницы, получают дифференциальную резервную копию (2 часа ночи)

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

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

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

Вопрос 1: могу ли я иметь этот сценарий?

Вопрос 2. Является ли хорошей идеей иметь только одну полную резервную копию и переносить разностные резервные копии / журналы транзакций в тестовую среду?

Вопрос 3: могу ли я иметь лучший сценарий для резервного копирования и восстановления?

Я все уши к рекомендациям. Если у вас есть пример, пожалуйста, покажите мне с запросом T-SQL.


Обзор Filestream прямо говорит нам, что вы можете исключить группы FILESTREAM из ваших резервных копий. Реализацию TSQL было бы
замечательно

Да, вы можете исключить FILESTREAM из своей резервной копии, но в процессе восстановления вам потребуется ее предоставить. Я думаю, что это всегда необходимо, когда ваша файловая группа находится в режиме чтения-записи. Это означает, что вы можете сделать частичное резервное копирование только ваших данных и другое резервное копирование, включая
Mario Navarro Claras

Ответы:


1

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

Нет.

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

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.