Пример. Поэтапное восстановление некоторых файловых групп (модель полного восстановления)
Область применения: SQL Server
Этот раздел относится к базам данных SQL Server в модели полного восстановления, содержащей несколько файлов или файловых групп.
В последовательности поэтапного восстановления база данных восстанавливается за несколько шагов на уровне файловой группы, начиная с первичной и всех вторичных файловых групп, доступных для чтения и записи.
В этом примере база данных adb
, которая использует модель полного восстановления, содержит три файловые группы. Файловая группа A
доступна для записи и для чтения, файловые группы B
и C
доступны только для чтения. Изначально все файловые группы находятся в режиме в сети.
Первичная файловая группа и файловая группа B
базы данных adb
, вероятно, повреждены. Первичная файловая группа достаточно мала и может быть быстро восстановлена. Администратор базы данных решает восстановить обе группы с помощью последовательности поэтапного восстановления. Сначала восстанавливается первичная файловая группа и связанные с ней журналы транзакций, при этом восстанавливается база данных.
Неизменившиеся файловые группы A
и C
содержат важные данные. Поэтому они будут восстановлены следующим образом и переведены в режим «в сети» как можно быстрее. Наконец, восстанавливается поврежденная вторичная файловая группа B
.
Последовательности восстановления
Примечание.
Синтаксис последовательности восстановления в сети тот же самый, что и в случае последовательности восстановления вне сети.
Создайте резервную копию заключительного фрагмента журнала базы данных
adb
. Этот этап важен, чтобы привести неповрежденные файловые группыA
иC
в соответствие с точкой восстановления базы данных.BACKUP LOG adb TO tailLogBackup WITH NORECOVERY
Произведите частичное восстановление первичной файловой группы.
RESTORE DATABASE adb FILEGROUP='Primary' FROM backup WITH PARTIAL, NORECOVERY RESTORE LOG adb FROM log_backup1 WITH NORECOVERY RESTORE LOG adb FROM log_backup2 WITH NORECOVERY RESTORE LOG adb FROM log_backup3 WITH NORECOVERY RESTORE LOG adb FROM tailLogBackup WITH RECOVERY
В этот момент первичная группа файлов переходит в режим «в сети». Файлы в файловых группах
A
,B
иC
ожидают восстановления и поэтому находятся в режиме «вне сети».Восстановление файлов
A
иC
в сети.Так как данные этих файловых групп не повреждены, их не нужно восстанавливать из резервной копии, но их нужно перевести в режим «в сети».
Администратор базы данных сразу же восстанавливает файловые группы
A
иC
.RESTORE DATABASE adb FILEGROUP='A', FILEGROUP='C' WITH RECOVERY
На этом этапе первичная файловая группа и файловые группы
A
иC
находятся в режиме в сети. Файлы в файловой группеB
ожидают восстановления, при этом она находится в режиме «вне сети».Восстановление файловой группы
B
«в сети».
Файлы в файловой группе B
могут быть восстановлены позже в любое время.
Примечание.
После того как файловая группа B
становится доступной только для чтения, используется ее резервная копия, что исключает необходимость выполнения наката.
RESTORE DATABASE adb FILEGROUP='B' FROM backup WITH RECOVERY
Теперь все файловые группы находятся в режиме «в сети».
Дополнительные примеры
Пример. Поэтапное восстановление базы данных (простая модель восстановления)
Пример. Поэтапное восстановление некоторых файловых групп (простая модель восстановления)
Пример. Оперативное восстановление файла только для чтения (простая модель восстановления)
Пример. Поэтапное восстановление базы данных (модель полного восстановления)
Пример. Оперативное восстановление файла только для чтения (модель полного восстановления)
См. также
BACKUP (Transact-SQL)
Восстановление в сети (SQL Server)
Применение резервных копий журналов транзакций (SQL Server)
RESTORE (Transact-SQL)
Восстановление фрагмента (SQL Server)