Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения:SQL Server
Эта тема относится к базам данных в редакции SQL Server Enterprise (восстановление в сети) или SQL Server Standard (автономное восстановление), которые содержат несколько файлов или файловых групп; а при простой модели восстановления — только к файловым группам только для чтения.
Дополнительные сведения о поэтапном восстановлении и оптимизированных для памяти таблицах см. в разделе Поэтапное восстановление баз данных с таблицами, оптимизированными для памяти.
Поэтапное восстановление позволяет восстанавливать поэтапно базы данных, содержащие несколько файловых групп. Поэтапное восстановление включает в себя ряд последовательностей восстановления, начиная с первичной файловой группы и, в некоторых случаях, с одной или несколькими вторичными файловыми группами. Поэтапное восстановление поддерживает проверки, обеспечивающие согласованность базы данных. По завершении последовательности восстановления восстановленные файлы (если они правильны и согласуются с текущим состоянием базы данных) могут быть сразу использованы в режиме «в сети».
Поэтапное восстановление работает со всеми моделями восстановления, но является более гибким для полной модели и модели с неполным протоколированием, чем для простой модели.
Каждое поэтапное восстановление начинается с начальной последовательности восстановления, называемой последовательностью частичного восстановления. Как минимум последовательность частичного восстановления восстанавливает и возвращает в рабочее состояние первичную файловую группу и, в простой модели восстановления, все файловые группы, доступные для чтения и записи. Во время последовательности частичного восстановления вся база данных переводится в режим «вне сети». После этого этапа база данных переводится в режим «в сети», а все восстановленные файловые группы становятся доступны. Однако невосстановленные файловые группы будут оставаться вне сети и будут недоступны. Файловые группы можно восстановить и перевести в состояние вне сети позднее, с помощью восстановления файлов.
Независимо от модели восстановления, используемой базой данных, последовательность частичного восстановления начинается с RESTOREDATABASE инструкции, которая восстанавливает полную резервную копию и задает параметр PARTIAL. Параметр PARTIAL запускает новое поэтапное восстановление, поэтому необходимо указать параметр PARTIAL только один раз в начальной инструкции последовательности частичного восстановления. В конце последовательности частичного восстановления, когда база данных переводится в режим «в сети», оставшиеся файлы переводятся в состояние «ожидание восстановления», потому что их восстановление было отложено.
Впоследствии поэтапное восстановление обычно состоит из одной или нескольких последовательностей восстановления, которые называются последовательностями восстановления файловых групп. Можно отложить выполнение последовательности восстановления файловых групп на любой период. Каждая последовательность восстановления файловых групп восстанавливает одну или несколько автономных файловых групп и приводит их в состояние, согласованное с базой данных. Число и время следующих друг за другом последовательностей восстановления групп файлов зависит от цели восстановления, количества восстанавливаемых групп файлов в режиме «вне сети» и того, сколько групп файлов восстанавливается в одной последовательности восстановления.
Точные требования к выполнению поэтапного восстановления зависят от модели восстановления базы данных. Дополнительные сведения см. в разделах «Поэтапное восстановление при простой модели восстановления» и «Поэтапное восстановление при полной модели восстановления» далее в этом разделе.
Сценарии поэтапного восстановления
Все выпуски SQL Server поддерживают автономное восстановление фрагментов. В выпуске Enterprise Edition поэтапное восстановление можно выполнять по сети или автономно. Последствия поэтапного восстановления в оперативном и автономном режимах заключаются в следующем:
Сценарий поэтапного восстановления в режиме «вне сети».
В последовательности поэтапного восстановления вне сети база данных находится в режиме «в сети» после завершения последовательности частичного восстановления. Еще не восстановленные файловые группы остаются в режиме «вне сети», но по необходимости они могут быть восстановлены после перевода базы данных в этот режим.
Сценарий поэтапного восстановления в режиме «в сети».
Во время поэтапного восстановления в сети после завершения последовательности частичного восстановления база данных переводится в режим «в сети», и первичная файловая группа и все восстановленные вторичные группы становятся доступны. Еще не восстановленные файловые группы остаются в режиме «вне сети», но по необходимости они могут быть восстановлены, при этом база данных останется в режиме «в сети».
Поэтапное восстановление в сети может включать в себя отложенные транзакции. Если в сценарии поэтапного восстановления происходит восстановление только подмножества файловых групп, то транзакции в базе данных, которые зависят от групп файлов в режиме «в сети», откладываются. Это нормально, так как база данных должна быть полностью согласованной. Дополнительные сведения см. в разделе "Отложенные транзакции" (SQL Server).
Сценарий поэтапного восстановления для In-Memory OLTP
Сведения о поэтапном восстановлении баз данных In-Memory OLTP см. в статье Поэтапное резервное копирование и восстановление баз данных с таблицами, оптимизированными для памяти.
Ограничения
Если последовательность частичного восстановления исключает любые файловые группы FILESTREAM , восстановление на момент времени не поддерживается. Можно принудительно продолжить последовательность восстановления. Однако файловая группа FILESTREAM, опущенная из инструкции RESTORE , никогда не может быть восстановлена. Чтобы принудительно выполнить восстановление на определённый момент времени, укажите параметр CONTINUE_AFTER_ERROR вместе с параметром STOPAT, STOPATMARK или STOPBEFOREMARK, которые также необходимо указать в последующих RESTORE инструкциях LOG. Если указать параметр CONTINUE_AFTER_ERROR, выполняется последовательность частичного восстановления, а файловая группа FILESTREAM становится невосстановимой.
Поэтапное восстановление в условиях простой модели восстановления
В простой модели восстановления последовательность поэтапного восстановления должна начинаться с полного или частичного резервного копирования базы данных. Затем, если восстановленная резервная копия является базой для разностной резервной копии, следующим шагом восстановите последнюю разностную резервную копию.
Если во время выполнения первой последовательности частичного восстановления восстанавливается только подмножество файловых групп с разрешениями на чтение и запись, все невосстановленные файловые группы пропадают при восстановлении частично восстановленной базы данных. Исключение файловой группы, доступной для чтения и записи, из последовательности частичного восстановления допустимо только в следующих случаях:
Планируется, что невосстановленные файловые группы должны стать нефункционирующими.
В точке восстановления, которую достигнет последовательность восстановления, все невосстановленные файловые группы стали доступны только для чтения, удалены или оказались нефункционирующими (во время предыдущего восстановления в последовательности частичного восстановления).
Полная резервная копия была создана, когда база данных использовала простую модель восстановления, но в точке восстановления база данных использовала модель полного восстановления. Дополнительные сведения см. в разделе «Выполнение поэтапного восстановления базы данных, модель восстановления которой была переключена с простой на полную» ниже.
Требования к поэтапному восстановлению при простой модели восстановления
В простой модели восстановления на первом этапе восстанавливается и выполняется восстановление первичной файловой группы и всех вторичных файловых групп для чтения и записи. По завершении начального этапа восстановленные файлы (если они правильны и согласуются с текущим состоянием базы данных) могут быть сразу использованы в режиме «в сети».
После этого файловые группы, доступные только для чтения, могут восстанавливаться за один или несколько дополнительных этапов.
Поэтапное восстановление может осуществляться для вторичной файловой группы, доступной только для чтения, если по отношению к ней выполняются следующие условия.
Был доступен только для чтения на момент резервного копирования.
Оставалась доступной только для чтения (что обеспечивает её логическую согласованность с первичной файловой группой).
Чтобы выполнить поэтапное восстановление, необходимо выполнить следующие рекомендации.
Полный набор резервных копий для поэтапного восстановления базы данных с простой моделью восстановления должен содержать следующее.
Частичную или полную резервную копию базы данных, в которой содержатся первичная файловая группа и все файловые группы, доступные для чтения и записи во время резервного копирования.
Резервную копию каждого файла, доступного только для чтения.
Чтобы резервная копия файла, доступного только для чтения, была согласована с первичной файловой группой, вторичная файловая группа должна была быть доступной только для чтения с момента резервного копирования до завершения процедуры резервного копирования, содержащей первичную файловую группу. Можно применять разностные резервные копии файлов, если они были получены после того, как файловая группа стала доступной только для чтения.
Этапы поэтапного восстановления (простая модель восстановления)
Сценарий поэтапного восстановления состоит из двух этапов.
Начальный этап (восстановление первичной файловой группы и всех файловых групп, доступных для чтения и записи).
На начальном этапе выполняется частичное восстановление. Последовательность частичного восстановления восстанавливает первичную файловую группу, все вторичные файловые группы, доступные для чтения и записи, и (дополнительно) некоторые файловые группы, доступные только для чтения. Во время начального этапа вся база данных переводится в режим «вне сети». После завершения начального этапа база данных переводится в режим «в сети» и восстановленные файловые группы доступны. Однако все невосстановленные файловые группы, доступные только для чтения, остаются в режиме «вне сети».
Первая RESTORE инструкция на начальном этапе должна выполнять следующие действия:
Использовать частичную или полную резервную копию, в которой содержатся первичная файловая группа и все файловые группы, доступные для чтения и записи во время резервного копирования. Часто последовательность частичного восстановления начинают с восстановления из частичной резервной копии.
Задавать параметр PARTIAL, который указывает на начало поэтапного восстановления.
Примечание.
Параметр PARTIAL выполняет проверку безопасности на предмет возможности использования восстановленной базы данных в качестве рабочей.
- Укажите параметр READ_WRITE_FILEGROUPS, если резервная копия является полной резервной копией базы данных.
Пока база данных находится в режиме «в сети», можно применить одно или несколько восстановлений файлов, чтобы восстановить файлы вне сети, доступные только для чтения, которые были доступны только для чтения во время резервного копирования. Выбор времени восстановлений файлов в сети зависит от того, когда данные необходимо перевести в режим «в сети».
Нужно ли восстанавливать данные в файл? Это зависит от следующих соображений:
Правильные файлы, доступные только для чтения, согласованные с базой данных, могут быть использованы в режиме «в сети» сразу после восстановления файлов без восстановления каких-либо данных с резервных копий.
Поврежденные или не согласованные с базой данных файлы необходимо восстановить из резервной копии, прежде чем выполнять их восстановление по журналу транзакций.
Примеры
Пример. Поэтапное восстановление базы данных (простая модель восстановления)
Пример. Поэтапное восстановление некоторых файловых групп (простая модель восстановления)
Поэтапное восстановление по модели полного восстановления
При модели полного восстановления или модели восстановления с неполным протоколированием поэтапное восстановление доступно для любой базы данных, содержащей несколько файловых групп, и такую базу данных можно восстановить до любого момента времени. Последовательности действий при поэтапном восстановлении выполняются следующим образом:
последовательность частичного восстановления
Последовательность частичного восстановления восстанавливает первичную файловую группу и, возможно, некоторые из вторичных групп.
Первая RESTOREDATABASE инструкция должна выполнять следующие действия:
Укажите параметр PARTIAL. Он указывает на начало поэтапного восстановления.
Использовать любую полную резервную копию, содержащую первичную файловую группу. Часто последовательность частичного восстановления начинают с восстановления из частичной резервной копии.
Чтобы выполнить восстановление к определённому моменту времени, необходимо указать время в последовательности частичного восстановления. Каждый последующий этап последовательности восстановления должен задавать тот же самый момент времени.
Последовательности восстановления групп файлов переводят дополнительные группы файлов в состояние «в сети» до состояния, согласованного с базой данных.
В выпуске Enterprise Edition любая автономная вторичная файловая группа может быть восстановлена, пока база данных остается в сети. Если данный доступный только для чтения файл не поврежден и согласуется с текущим состоянием базы данных, его восстанавливать не нужно. Дополнительные сведения см. в разделе Восстановление базы данных без восстановления данных (Transact-SQL).
Применение резервных копий журнала
Если файловая группа доступна только для чтения с момента, предшествующего созданию резервной копии файловых групп, использование резервных копий журналов не нужно, и эта группа пропускается при восстановлении файлов. Если файловая группа доступна для чтения и для записи, то с целью перевода файловой группы в состояние, соответствующее текущему файлу журнала, необходимо применить непрерывную последовательность резервных копий журнала к последнему экземпляру, полученному в результате полного или разностного восстановления. Дополнительные сведения о процессе восстановления см. в статье Обзор процессов восстановления (SQL Server).
Примеры
Пример. Поэтапное восстановление базы данных (модель полного восстановления)
Пример. Поэтапное восстановление некоторых файловых групп (модель полного восстановления)
Выполнение поэтапного восстановления базы данных, модель восстановления которой была переключена с простой на полную
Можно выполнить поэтапное восстановление базы данных, модель восстановления которой была переключена с простой на полную с момента полного частичного резервного копирования или резервного копирования базы данных. Например, рассмотрим базу данных, для которой можно выполнить следующее:
Создать частичную резервную копию базы данных simple-model (backup_1).
через некоторый период времени изменить модель восстановления на полную;
Создайте разностную резервную копию.
начать создание резервных копий журналов.
Следовательно, верна следующая последовательность:
частичное восстановление, в котором пропущены некоторые вторичные файловые группы;
Разностное восстановление, за которым следуют все другие необходимые операции восстановления.
последующее восстановление файлов из доступных для чтения и записи вторичных файловых групп из частичной резервной копии backup_1 с параметром WITH NORECOVERY;
разностная резервная копия, а затем любые другие резервные копии, восстановленные в исходной последовательности поэтапного восстановления, для восстановления данных до исходной точки восстановления.
См. также
Применение резервных копий журналов транзакций (SQL Server)
RESTORE (Transact-SQL)
Восстановление базы данных SQL Server до определенного момента времени (модель полного восстановления)
Обзор процессов восстановления (SQL Server)
Планирование и выполнение последовательностей восстановления (модель полного восстановления)
Обзор процессов восстановления (SQL Server)