Как восстановить файлы в новое место(Transact-SQL)
В этом подразделе описана процедура восстановления файлов в новое место.
Важно! |
---|
Системный администратор, восстанавливающий файлы, должен быть единственным лицом, использующим восстанавливаемую базу данных в данный момент. |
Восстановление файлов и групп файлов в новое место
При необходимости выполните инструкцию RESTORE FILELISTONLY, чтобы определить количество и имена файлов в полной резервной копии базы данных.
Для восстановления полной резервной копии базы данных выполните инструкцию RESTORE DATABASE, указав:
- Имя базы данных для восстановления.
- Устройство резервного копирования, откуда будет восстановлена полная резервная копия.
- Предложение MOVE для каждого восстанавливаемого в новое место файла.
- Предложение NORECOVERY.
Если файлы были изменены после создания резервной копии, выполните инструкцию RESTORE LOG для применения резервной копии журналов транзакций, указав следующее:
- Имя базы данных, к которой будет применен журнал транзакций.
- Устройство резервного копирования, с которого будет восстановлена резервная копия журнала транзакций.
- Предложение NORECOVERY, если существует другая резервная копия журналов транзакций для применения после текущего; в противном случае укажите предложение RECOVERY.
Резервные копии журналов транзакций, в случае их использования, должны включать в себя промежуток времени, в течение которого создавались резервные копии файлов и файловых групп.
Пример
В этом примере восстанавливаются два файла базы данных MyNwind, первоначально находившихся на диске C, в новое место на диске D. Также будут применены два журнала транзакций, для восстановления базы данных на текущий момент времени. Инструкция RESTORE FILELISTONLY используется, чтобы определить количество и имена файлов восстанавливаемой базы данных (логические и физические).
USE master
GO
-- 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 NORECOVERY
GO
-- Apply the last transaction log backup.
RESTORE LOG MyNwind
FROM MyNwind_log2
WITH RECOVERY
GO
См. также
Основные понятия
Создание копий баз данных с помощью резервного копирования и восстановления
Другие ресурсы
RESTORE (Transact-SQL)
Учебник по среде SQL Server Management Studio