Командлет Restore-SqlDatabase выполняет операции восстановления в базе данных SQL Server.
К ним относятся полные операции восстановления базы данных, восстановление журнала транзакций и восстановление файлов базы данных.
Этот командлет моделиируется после класса Microsoft.SqlServer.Management.Smo.Restore .
Параметры этого командлета обычно соответствуют свойствам объекта Smo.Restore .
Примеры
Пример 1. Восстановление базы данных из файла резервной копии в сетевой папке
Эта команда восстанавливает журнал транзакций для базы данных MainDB из файла \\mainserver\databasebackup\MainDB.trn на экземпляр сервера Computer\Instance.
Пример 3. Восстановление базы данных и запрос пароля
Эта команда восстанавливает полную базу данных MainDB из файла \\mainserver\databasebackup\MainDB.trn на экземпляр сервера Computer\Instance, используя имя входа sa SQL.
Эта команда запросит пароль для завершения проверки подлинности.
Пример 4. Восстановление журнала транзакций с помощью параметра NORECOVERY
Эта команда восстанавливает журнал транзакций базы данных MainDB с параметром NORECOVERY из файла \\mainserver\databasebackup\MainDB.trn на экземпляр сервера "Computer\Instance".
Пример 5. Восстановление записей журнала транзакций до точки во времени
В этом примере восстанавливается полная база данных MainDB на экземпляр сервера Computer\Instance и перемещает файлы данных и журналов.
Для каждого перемещаемого файла пример создает экземпляр класса Microsoft.SqlServer.Management.Smo.MovedeFile .
Каждый конструктор принимает два аргумента, логическое имя файла и физическое расположение, в котором файл будет размещен на целевом сервере.
Объекты RelocateFile передаются в параметр "Переместитьfile " командлета Restore-SqlDatabase .
В этом примере база данных MainDB восстанавливается с ленточного устройства с именем \\.\tape0 на экземпляр сервера Computer\Instance.
Для представления этого устройства пример создает экземпляр класса Microsoft.Sqlserver.Management.Smo.BackupDeviceItem .
Конструктор принимает два аргумента: имя устройства резервного копирования и тип устройства резервного копирования.
Затем этот объект BackupDeviceItem передается в параметр -BackupDevice командлета Restore-SqlDatabase .
Пример 8. Восстановление базы данных из службы хранилища BLOB-объектов Azure
Эта команда восстанавливает полную базу данных MainDB из файла в службе хранилища BLOB-объектов Windows Azure на экземпляр сервера Computer\Instance.
Параметры
-BackupDevice
Указывает устройства, на которых хранятся резервные копии.
Этот параметр нельзя использовать с параметром BackupFile .
Используйте этот параметр, если выполняется резервное копирование на ленточное устройство.
Свойства параметра
Тип:
BackupDeviceItem[]
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-BackupFile
Указывает расположение или расположения, в которых хранятся файлы резервной копии.
Это необязательный параметр.
Если не указано, расположение резервного копирования сервера по умолчанию выполняется <поиск имени базы данных.trn> для восстановления журналов или <имени> базы данных.bak для всех других типов восстановления.
Этот параметр нельзя использовать с параметром BackupDevice .
Если вы поддерживаете службу хранилища BLOB-объектов Windows Azure (URL-адрес), необходимо указать этот параметр или параметр BackupDevice .
Свойства параметра
Тип:
String[]
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
3
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-BlockSize
Указывает размер физического блока в байтах для резервной копии.
Поддерживаются размеры 512, 1024, 2048, 4096, 8192, 16 384, 32 768 и 65 536 байт (64 КБ).
Значение по умолчанию — 65536 для ленточных устройств и 512 для всех остальных устройств.
Свойства параметра
Тип:
Int32
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-BufferCount
Указывает общее число буферов ввода-вывода, которые будут использоваться для операции резервного копирования.
Можно указать любое положительное целое число.
Если в процессе Sqlservr.exe для буферов недостаточно виртуального адресного пространства, вы получите ошибку из памяти.
Свойства параметра
Тип:
Int32
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-Checksum
Указывает, что значение контрольной суммы вычисляется во время операции восстановления.
Свойства параметра
Тип:
SwitchParameter
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-ClearSuspectPageTable
Указывает, что подозреваемая таблица страницы удаляется после операции восстановления.
Свойства параметра
Тип:
SwitchParameter
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-Confirm
Запрашивает подтверждение перед запуском cmdlet.
Свойства параметра
Тип:
SwitchParameter
Default value:
False
Поддерживаются подстановочные знаки:
False
DontShow:
False
Aliases:
cf
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-ConnectionTimeout
Указывает количество секунд, ожидающее подключения к серверу до сбоя времени ожидания.
Значение времени ожидания должно быть целым числом от 0 до 65534.
Если задано значение 0, попытки подключения не истекает.
Свойства параметра
Тип:
Int32
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
ByName
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-ContinueAfterError
Указывает, что операция продолжается при возникновении ошибки контрольной суммы.
Если не задано, операция завершится ошибкой после ошибки контрольной суммы.
Свойства параметра
Тип:
SwitchParameter
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-Credential
Указывает объект PSCredential , содержащий учетные данные для имени входа SQL Server с разрешением на выполнение этой операции.
Свойства параметра
Тип:
PSCredential
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
ByName
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-Database
Указывает имя базы данных для восстановления.
Это нельзя использовать с параметром DatabaseObject .
При использовании этого параметра также необходимо указать параметры Path, InputObject или ServerInstance .
Свойства параметра
Тип:
String
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
ByPath
Position:
2
Обязательно:
True
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
ByObject
Position:
2
Обязательно:
True
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
ByName
Position:
2
Обязательно:
True
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-DatabaseFile
Указывает файлы базы данных, предназначенные для операции восстановления.
Используется только в том случае, если параметр RestoreAction имеет значение Files.
Если параметр RestoreAction имеет значение Files, необходимо также указать параметр DatabaseFileGroups или DatabaseFiles .
Свойства параметра
Тип:
String[]
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-DatabaseFileGroup
Указывает группы файлов базы данных, предназначенные для операции восстановления.
Это используется только в том случае, если параметр RestoreAction имеет значение File.
Если параметр RestoreAction имеет значение Files, необходимо также указать параметр DatabaseFileGroups или DatabaseFiles .
Свойства параметра
Тип:
String[]
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-DatabaseObject
Указывает объект базы данных для операции восстановления.
Свойства параметра
Тип:
Database
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
ByDBObject
Position:
2
Обязательно:
True
Значение из конвейера:
True
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-FileNumber
Указывает номер индекса, используемый для идентификации целевого набора резервных копий на носителе резервного копирования.
Свойства параметра
Тип:
Int32
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-InputObject
Указывает серверный объект экземпляра SQL Server, в котором происходит восстановление.
Свойства параметра
Тип:
Server[]
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
ByObject
Position:
Named
Обязательно:
True
Значение из конвейера:
True
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-KeepReplication
Указывает, что конфигурация репликации сохраняется.
Если не задано, конфигурация репликации игнорируется операцией восстановления.
Свойства параметра
Тип:
SwitchParameter
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-MaxTransferSize
Указывает максимальное количество байтов, передаваемых между носителем резервного копирования и экземпляром SQL Server.
Возможные значения — несколько из 65536 байт (64 КБ), до 4194304 байтов (4 МБ).
Свойства параметра
Тип:
Int32
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-MediaName
Указывает имя, определяющее набор носителей.
Свойства параметра
Тип:
String
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-NoRecovery
Указывает, что база данных восстанавливается в состоянии восстановления.
Операция отката не возникает, и можно восстановить дополнительные резервные копии.
Свойства параметра
Тип:
SwitchParameter
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-NoRewind
Указывает, что ленточный диск остается открытым в конечной позиции при завершении восстановления.
Если не задано, лента перенастроится после завершения операции.
Это не относится к восстановлению диска.
Свойства параметра
Тип:
SwitchParameter
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-Offset
Указывает адреса страницы, которые необходимо восстановить.
Это используется только в том случае, если параметр RestoreAction имеет значение OnlinePage.
Свойства параметра
Тип:
Int64[]
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-Partial
Указывает, что операция восстановления является частичным восстановлением.
Свойства параметра
Тип:
SwitchParameter
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-PassThru
Указывает, что этот командлет выводит объект Smo.Backup , используемый для выполнения операции восстановления.
Свойства параметра
Тип:
SwitchParameter
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-Path
Указывает путь экземпляра SQL Server, на котором выполняется операция восстановления.
Это необязательный параметр.
Если оно не указано, используется текущее рабочее расположение.
Свойства параметра
Тип:
String[]
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
ByPath
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-RelocateFile
Указывает список объектов файла Smo.Relocate .
Каждый объект состоит из имени логического файла резервного копирования и расположения физической файловой системы.
Восстановление перемещает восстановленную базу данных в указанное физическое расположение на целевом сервере.
Свойства параметра
Тип:
RelocateFile[]
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-ReplaceDatabase
Указывает, что создается новый образ базы данных.
При этом перезаписывается любая существующая база данных с тем же именем.
Если этот параметр не задан, операция восстановления завершится ошибкой, когда база данных с таким именем уже существует на сервере.
Свойства параметра
Тип:
SwitchParameter
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-Restart
Указывает, что этот командлет возобновляет частично завершенную операцию восстановления.
Если этот параметр не задан, командлет перезапускает прерванную операцию восстановления в начале резервного набора данных.
Свойства параметра
Тип:
SwitchParameter
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-RestoreAction
Указывает тип выполняемой операции восстановления.
Допустимые значения:
База данных.
База данных восстанавливается.
Файлы.
Восстанавливается один или несколько файлов данных.
Необходимо указать параметр DatabaseFile или DatabaseFileGroup .
Журнал.
Журнал трансляций восстанавливается.
OnlinePage.
Страница данных восстанавливается в сети, чтобы база данных оставалась доступной для пользователей.
OnlineFiles.
Файлы данных восстанавливаются в сети, чтобы база данных оставалась доступной для пользователей.
Необходимо указать параметр DatabaseFile или DatabaseFileGroup .
Свойства параметра
Тип:
RestoreActionType
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-RestrictedUser
Указывает, что доступ к восстановленной базе данных ограничен ролью фиксированной базы данных db_owner, а также предопределенных ролей сервера dbcreator и sysadmin.
Свойства параметра
Тип:
SwitchParameter
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-Script
Указывает, что этот командлет выводит скрипт Transact-SQL, выполняющий операцию восстановления.
Свойства параметра
Тип:
SwitchParameter
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-ServerInstance
Указывает имя экземпляра SQL Server.
Этот экземпляр сервера становится целевым объектом операции восстановления.
Свойства параметра
Тип:
String[]
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
ByName
Position:
Named
Обязательно:
True
Значение из конвейера:
True
Значение из конвейера по имени свойства:
True
Значение из оставшихся аргументов:
False
-SqlCredential
Указывает объект учетных данных SQL Server, в котором хранятся сведения о проверке подлинности.
При резервном копировании в службу хранилища BLOB-объектов необходимо указать этот параметр.
Данные проверки подлинности, хранящиеся, включают имя учетной записи хранения и связанные значения ключей доступа.
Не указывайте этот параметр для диска или ленты.
Свойства параметра
Тип:
PSObject
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-StandbyFile
Указывает имя файла отмены, который используется в рамках стратегии создания образов для экземпляра SQL Server.
Свойства параметра
Тип:
String
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-StopAtMarkAfterDate
Указывает дату, используемую с именем метки, указанной параметром StopAtMarkName , чтобы определить точку остановки операции восстановления.
Свойства параметра
Тип:
String
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-StopAtMarkName
Указывает помеченную транзакцию, с которой остановить операцию восстановления.
Этот параметр используется с параметром StopAtMarkAfterDate для определения точки остановки операции восстановления.
Восстановленные данные включают транзакцию, содержащую метку.
Если значение StopAtMarkAfterDate не задано, восстановление останавливается на первой отметке с указанным именем.
Свойства параметра
Тип:
String
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-StopBeforeMarkAfterDate
Указывает дату, используемую с параметром StopBeforeMarkName , чтобы определить точку остановки операции восстановления.
Свойства параметра
Тип:
String
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-StopBeforeMarkName
Указывает помеченную транзакцию, перед которой следует остановить операцию восстановления.
Этот параметр используется с параметром StopBeforeMarkAfterDate для определения точки остановки операции восстановления.
Свойства параметра
Тип:
String
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-ToPointInTime
Указывает конечную точку для восстановления журнала базы данных.
Это применяется только в том случае, если параметр RestoreAction имеет значение Log.
Свойства параметра
Тип:
String
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-UnloadTapeAfter
Указывает, что ленточное устройство перезагружается и выгружается после завершения операции.
Если не задано, попытка перемотки и выгрузки ленточного носителя не выполняется.
Это не относится к резервным копиям дисков.
Свойства параметра
Тип:
SwitchParameter
Default value:
None
Поддерживаются подстановочные знаки:
False
DontShow:
False
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
-WhatIf
Показывает, что произойдет, если командлет будет запущен.
Командлет не запускается.
Свойства параметра
Тип:
SwitchParameter
Default value:
False
Поддерживаются подстановочные знаки:
False
DontShow:
False
Aliases:
wi
Наборы параметров
(All)
Position:
Named
Обязательно:
False
Значение из конвейера:
False
Значение из конвейера по имени свойства:
False
Значение из оставшихся аргументов:
False
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Входные данные
Smo.Server
Указывает SMO. Серверный объект, описывающий экземпляр SQL Server, на котором выполняется операция восстановления.