Как восстановить файлы в новое место (Transact-SQL)
В этом подразделе описана процедура восстановления файлов в новое место.
Важно! |
---|
Системный администратор, восстанавливающий файлы, должен быть единственным лицом, использующим восстанавливаемую базу данных в данный момент. |
Восстановление файлов и групп файлов в новое место
При необходимости выполните инструкцию RESTORE FILELISTONLY, чтобы определить количество и имена файлов в полной резервной копии базы данных.
Для восстановления полной резервной копии базы данных выполните инструкцию RESTORE DATABASE, указав:
Имя базы данных для восстановления.
Устройство резервного копирования, откуда будет восстановлена полная резервная копия.
Предложение MOVE для каждого восстанавливаемого в новое место файла.
Предложение NORECOVERY.
Если файлы были изменены после создания резервной копии, выполните инструкцию RESTORE LOG для применения резервной копии журналов транзакций, указав следующее:
Имя базы данных, к которой будет применен журнал транзакций.
Устройство резервного копирования, с которого будет восстановлена резервная копия журнала транзакций.
Предложение NORECOVERY, если существует другая резервная копия журналов транзакций для применения после текущего; в противном случае укажите предложение RECOVERY.
Резервные копии журналов транзакций, в случае их использования, должны включать в себя промежуток времени, в течение которого создавались резервные копии файлов и файловых групп.
Пример
В этом примере восстанавливаются два файла базы данных MyNwind, первоначально находившихся на диске C, в новое место на диске D. Также будут применены два журнала транзакций, для восстановления базы данных на текущий момент времени. Инструкция RESTORE FILELISTONLY используется, чтобы определить количество и имена файлов восстанавливаемой базы данных (логические и физические).
USE masterGO-- First determine the number and names of the files in the backup.RESTORE FILELISTONLY FROM MyNwind_1-- Restore the files for MyNwind.RESTORE DATABASE MyNwind FROM MyNwind_1 WITH NORECOVERY, MOVE 'MyNwind_data_1' TO 'D:\MyData\MyNwind_data_1.mdf', MOVE 'MyNwind_data_2' TO 'D:\MyData\MyNwind_data_2.ndf'GO-- Apply the first transaction log backup.RESTORE LOG MyNwind FROM MyNwind_log1 WITH NORECOVERYGO-- Apply the last transaction log backup.RESTORE LOG MyNwind FROM MyNwind_log2 WITH RECOVERYGO
См. также