Restore-SqlDatabase
从备份或事务日志记录还原数据库。
语法
Restore-SqlDatabase
[-ClearSuspectPageTable]
[-KeepReplication]
[-Partial]
[-ReplaceDatabase]
[-RestrictedUser]
[-Offset <Int64[]>]
[-RelocateFile <RelocateFile[]>]
[-AutoRelocateFile]
[-FileNumber <Int32>]
[-RestoreAction <RestoreActionType>]
[-StandbyFile <String>]
[-StopAtMarkAfterDate <String>]
[-StopAtMarkName <String>]
[-StopBeforeMarkAfterDate <String>]
[-StopBeforeMarkName <String>]
[-ToPointInTime <String>]
[-Database] <String>
[-Path <String[]>]
[[-BackupFile] <String[]>]
[-SqlCredential <PSObject>]
[-BackupDevice <BackupDeviceItem[]>]
[-PassThru]
[-Checksum]
[-ContinueAfterError]
[-NoRewind]
[-Restart]
[-UnloadTapeAfter]
[-NoRecovery]
[-DatabaseFile <String[]>]
[-DatabaseFileGroup <String[]>]
[-BlockSize <Int32>]
[-BufferCount <Int32>]
[-MaxTransferSize <Int32>]
[-MediaName <String>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Restore-SqlDatabase
[-ClearSuspectPageTable]
[-KeepReplication]
[-Partial]
[-ReplaceDatabase]
[-RestrictedUser]
[-Offset <Int64[]>]
[-RelocateFile <RelocateFile[]>]
[-AutoRelocateFile]
[-FileNumber <Int32>]
[-RestoreAction <RestoreActionType>]
[-StandbyFile <String>]
[-StopAtMarkAfterDate <String>]
[-StopAtMarkName <String>]
[-StopBeforeMarkAfterDate <String>]
[-StopBeforeMarkName <String>]
[-ToPointInTime <String>]
[-Database] <String>
-ServerInstance <String[]>
[-Credential <PSCredential>]
[-ConnectionTimeout <Int32>]
[[-BackupFile] <String[]>]
[-SqlCredential <PSObject>]
[-BackupDevice <BackupDeviceItem[]>]
[-PassThru]
[-Checksum]
[-ContinueAfterError]
[-NoRewind]
[-Restart]
[-UnloadTapeAfter]
[-NoRecovery]
[-DatabaseFile <String[]>]
[-DatabaseFileGroup <String[]>]
[-BlockSize <Int32>]
[-BufferCount <Int32>]
[-MaxTransferSize <Int32>]
[-MediaName <String>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Restore-SqlDatabase
[-ClearSuspectPageTable]
[-KeepReplication]
[-Partial]
[-ReplaceDatabase]
[-RestrictedUser]
[-Offset <Int64[]>]
[-RelocateFile <RelocateFile[]>]
[-AutoRelocateFile]
[-FileNumber <Int32>]
[-RestoreAction <RestoreActionType>]
[-StandbyFile <String>]
[-StopAtMarkAfterDate <String>]
[-StopAtMarkName <String>]
[-StopBeforeMarkAfterDate <String>]
[-StopBeforeMarkName <String>]
[-ToPointInTime <String>]
[-Database] <String>
-InputObject <Server[]>
[[-BackupFile] <String[]>]
[-SqlCredential <PSObject>]
[-BackupDevice <BackupDeviceItem[]>]
[-PassThru]
[-Checksum]
[-ContinueAfterError]
[-NoRewind]
[-Restart]
[-UnloadTapeAfter]
[-NoRecovery]
[-DatabaseFile <String[]>]
[-DatabaseFileGroup <String[]>]
[-BlockSize <Int32>]
[-BufferCount <Int32>]
[-MaxTransferSize <Int32>]
[-MediaName <String>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Restore-SqlDatabase
[-ClearSuspectPageTable]
[-KeepReplication]
[-Partial]
[-ReplaceDatabase]
[-RestrictedUser]
[-Offset <Int64[]>]
[-RelocateFile <RelocateFile[]>]
[-AutoRelocateFile]
[-FileNumber <Int32>]
[-RestoreAction <RestoreActionType>]
[-StandbyFile <String>]
[-StopAtMarkAfterDate <String>]
[-StopAtMarkName <String>]
[-StopBeforeMarkAfterDate <String>]
[-StopBeforeMarkName <String>]
[-ToPointInTime <String>]
[-DatabaseObject] <Database>
[[-BackupFile] <String[]>]
[-SqlCredential <PSObject>]
[-BackupDevice <BackupDeviceItem[]>]
[-PassThru]
[-Checksum]
[-ContinueAfterError]
[-NoRewind]
[-Restart]
[-UnloadTapeAfter]
[-NoRecovery]
[-DatabaseFile <String[]>]
[-DatabaseFileGroup <String[]>]
[-BlockSize <Int32>]
[-BufferCount <Int32>]
[-MaxTransferSize <Int32>]
[-MediaName <String>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
说明
Restore-SqlDatabase cmdlet 对SQL Server数据库执行还原操作。 这包括完整数据库还原、事务日志还原和数据库文件还原。
此 cmdlet 根据 Microsoft.SqlServer.Management.Smo.Restore 类进行仿造。 此 cmdlet 上的参数通常对应于 Smo.Restore 对象的属性。
示例
示例 1:从网络共享上的备份文件还原数据库
PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.bak"
此命令将整个数据库 MainDB
从 文件 \\mainserver\databasebackup\MainDB.bak
还原到服务器实例 Computer\Instance
。
示例 2:还原数据库事务日志
PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.trn" -RestoreAction Log
此命令将数据库的 MainDB
事务日志从 文件 \\mainserver\databasebackup\MainDB.trn
还原到服务器实例 Computer\Instance
。
示例 3:还原数据库并提示输入密码
PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.bak" -Credential (Get-Credential "sa")
此命令使用 sa
SQL 登录名将文件\\mainserver\databasebackup\MainDB.bak
的完整数据库MainDB
还原到服务器实例Computer\Instance
。
此命令将提示输入密码以完成身份验证。
示例 4:使用 NORECOVERY 选项还原事务日志
PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.trn" -RestoreAction Log -NoRecovery
此命令使用 选项将数据库的MainDB
NORECOVERY
事务日志从 文件\\mainserver\databasebackup\MainDB.trn
还原到服务器实例 Computer\Instance
。
示例 5:将事务日志记录还原到一个时间点
PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.trn" -RestoreAction Log -ToPointInTime "Sep 21, 2017 11:11 PM"
此命令将数据库的 MainDB
事务日志还原到传递到 ToPointInTime 参数的日期(2017 年 9 月 21 日晚上 11:11)。
示例 6:还原数据库并重定位数据和日志文件
PS C:\> $RelocateData = New-Object Microsoft.SqlServer.Management.Smo.RelocateFile("MainDB_Data", "c:\MySQLServer\MainDB.mdf")
PS C:\> $RelocateLog = New-Object Microsoft.SqlServer.Management.Smo.RelocateFile("MainDB_Log", "c:\MySQLServer\MainDB.ldf")
PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.trn" -RelocateFile @($RelocateData,$RelocateLog)
此示例将完整数据库 MainDB
还原到服务器实例 Computer\Instance
,并重定位数据和日志文件。
对于移动的每个文件,该示例构造 Microsoft.SqlServer.Management.Smo.RelocateFile 类的实例。
每个构造函数采用两个参数,即文件的逻辑名称和文件将放置在目标服务器上的物理位置。
RelocateFile 对象将传递到 Restore-SqlDatabase cmdlet 的 RelocateFile 参数。
示例 7:从磁带还原数据库
PS C:\> $TapeDevice = New-Object Microsoft.Sqlserver.Management.Smo.BackupDeviceItem("\\.\tape0", "Tape")
PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupDevice $TapeDevice
此示例将数据库 MainDB
从名为 \\.\tape0
的磁带设备还原到服务器实例 Computer\Instance
。
为了表示此设备,该示例构造了 Microsoft.Sqlserver.Management.Smo.BackupDeviceItem 类的实例。
构造函数采用两个参数:备份设备的名称和备份设备的类型。
然后,此 BackupDeviceItem 对象将传递到 Restore-SqlDatabase cmdlet 的 BackupDevice 参数。
示例 8:从Azure Blob 存储服务还原数据库
PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "https://mystorageaccountname.blob.core.windows.net/container/MyDB.bak" -SqlCredential "mySqlCredential"
此命令将完整数据库MainDB
从 Windows Azure Blob 存储 服务上的 文件还原到服务器实例 Computer\Instance
。
示例 9:使用 -AutoRelocateFile 在 SQL2016 上备份数据库并在SQL2017上还原
PS C:\> Get-SqlDatabase -ServerInstance MYSERVER\SQL2016 -Database AdventureWorks | Backup-SqlDatabase -BackupFile 'C:\BAK2\AdventureWorks.bak'
PS C:\> $restore = Restore-SqlDatabase -ServerInstance MYSERVER\SQL2017 -Database AdventureWorks2016 -BackupFile 'C:\BAK2\AdventureWorks.bak' -AutoRelocateFile -PassThru
PS C:\> $db.RelocateFiles
LogicalFileName PhysicalFileName
--------------- ----------------
AdventureWorks_Data C:\Program Files\Microsoft SQL Server\MSSQL14.SQL2017\MSSQL\DATA\AdventureWorks_Data.mdf
AdventureWorks_Log C:\Program Files\Microsoft SQL Server\MSSQL14.SQL2017\MSSQL\DATA\AdventureWorks_Log.ldf
# You can see that the original PhysicalFileNames were indeed differet by running the followiong query:
PS C:\> Invoke-Sqlcmd -ServerInstance MYSERVER\SQL2016 -Query "RESTORE FILELISTONLY FROM DISK = N'C:\BAK2\AdventureWorks.bak' WITH NOUNLOAD" | Select -Property LogicalName,PhysicalName
LogicalName PhysicalName
----------- ------------
AdventureWorks_Data C:\Program Files\Microsoft SQL Server\MSSQL13.SQL2016\MSSQL\DATA\AdventureWorks_Data.mdf
AdventureWorks_Log C:\Program Files\Microsoft SQL Server\MSSQL13.SQL2016\MSSQL\DATA\AdventureWorks_Log.ldf
第一个命令在计算机 MYSERVER 上运行SQL2016实例上备份数据库 AdventureWorks。 备份保存在 C:\BAK2 下。
第二个 cmdlet 中使用相同的备份文件来还原在同一台计算机上运行的 SQL2017 实例上的数据库 (MYSERVER) 。 请注意,如果没有 -AutoRelocate 开关,则 cmdlet 会失败,因为物理文件存在差异(如上表 (进一步所示),很可能文件已被SQL2016使用,SQL2017) 可能无法访问。 -AutoRelocate 允许用户避免显式使用 -RelocationFile,该参数的生成非常繁琐。
注意:假设 SQL2016 实例和 SQL2017 实例都有权访问 C:\BAK2 文件夹。
参数
-AccessToken
用于对SQL Server进行身份验证的访问令牌,作为用户/密码或 Windows 身份验证的替代方法。
例如,这可用于连接到 SQL Azure DB
和使用 SQL Azure Managed Instance
Service Principal
或 Managed Identity
。
要使用的参数可以是表示令牌的字符串,也可以是 PSAccessToken
运行 Get-AzAccessToken -ResourceUrl https://database.windows.net
返回的对象。
此参数是模块 v22 中的新增参数。
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AutoRelocateFile
指定此开关后,cmdlet 将负责自动重定位备份中的所有逻辑文件,除非使用 RelocateFile 指定了此类逻辑文件。 服务器 DefaultFile 和 DefaultLog 用于重定位文件。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-BackupDevice
指定存储备份的设备。 此参数不能与 BackupFile 参数结合使用。 如果要备份到磁带设备,请使用此参数。
Type: | BackupDeviceItem[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-BackupFile
指定备份文件的存储位置。 此参数是可选的。
如果未指定,则会在服务器的默认备份位置中搜索日志还原的名称 <database name>.trn
,或 <database name>.bak
搜索所有其他类型的还原的名称。
此参数不能与 BackupDevice 参数一起使用。
如果要备份到 Windows Azure Blob 存储 服务 (URL) ,则必须指定此参数或 BackupDevice 参数。
Type: | String[] |
Position: | 2 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-BlockSize
指定备份的物理块大小(以字节为单位)。 支持的大小是 512、1024、2048、4096、8192、16384、32768 和 65536 (64 KB) 字节。 对于磁带设备,默认值为 65536,对于所有其他设备,默认值为 512。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-BufferCount
指定用于备份操作的 I/O 缓冲区总数。 可以指定任意正整数。 如果缓冲区的 Sqlservr.exe 进程中的虚拟地址空间不足,则会收到内存不足错误。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Checksum
指示在还原操作期间计算校验和值。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ClearSuspectPageTable
指示在还原操作后删除可疑页表。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
提示你在运行 cmdlet 之前进行确认。
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ConnectionTimeout
指定在超时失败之前等待服务器连接的秒数。 超时值必须是 0 和 65534 之间的整数。 如果指定了 0,则连接尝试不会超时。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ContinueAfterError
指示在发生校验和错误时操作继续。 如果未设置,该操作将在校验和错误后失败。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
指定 PSCredential 对象,该对象包含有权执行此操作的SQL Server登录名的凭据。
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Database
指定要还原的数据库的名称。 这不能与 DatabaseObject 参数一起使用。 使用此参数时,还必须指定 Path、 InputObject 或 ServerInstance 参数。
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DatabaseFile
指定还原操作的目标数据库文件。 仅当 RestoreAction 参数设置为“文件”时,才使用此选项。 当 RestoreAction 参数设置为“文件”时,还必须指定 DatabaseFileGroups 或 DatabaseFiles 参数。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DatabaseFileGroup
指定还原操作所面向的数据库文件组。 仅当 RestoreAction 参数设置为“文件”时,才使用此选项。 当 RestoreAction 参数设置为“文件”时,还必须指定 DatabaseFileGroups 或 DatabaseFiles 参数。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DatabaseObject
指定还原操作的数据库对象。
Type: | Database |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Encrypt
连接到SQL Server时使用的加密类型。
此值映射到 Encrypt
Microsoft.Data.SqlClient 驱动程序的 SqlConnection 对象上的 属性 SqlConnectionEncryptOption
。
在模块的 v22 中,默认 Optional
为 (,以便与 v21) 兼容。 在模块的 v23+ 中,默认值为“必需”,这可能会为现有脚本创建中断性变更。
此参数是模块 v22 中的新增参数。
Type: | String |
Accepted values: | Mandatory, Optional, Strict |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FileNumber
指定用于标识备份介质上的目标备份集的索引号。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-HostNameInCertificate
验证 SQL Server TLS/SSL 证书时要使用的主机名。 如果SQL Server实例启用了强制加密,并且你想要使用主机名/shortname 连接到实例,则必须传递此参数。 如果省略此参数,则必须将完全限定的域名 (FQDN) 传递给 -ServerInstance 才能连接到启用强制加密的SQL Server实例。
此参数是模块 v22 中的新增参数。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
指定发生还原的 SQL Server 实例的服务器对象。
Type: | Server[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-KeepReplication
指示保留复制配置。 如果未设置,则还原操作将忽略复制配置。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MaxTransferSize
指定要在备份媒体与 SQL Server 实例之间传输的最大字节数。 可能的值是 65536 字节 (64 KB) 的倍数,最多可达到 4194304 字节 (4 MB)。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MediaName
指定标识媒体集的名称。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoRecovery
指示数据库已还原到还原状态。 不会执行回滚操作,并且可以还原其他备份。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoRewind
指示在还原完成时,磁带驱动器在结束位置保持打开状态。 如果未设置,则操作完成后将倒带。 这不适用于磁盘还原。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Offset
指定要还原的页面地址。 仅当 RestoreAction 设置为 OnlinePage 时,才使用此选项。
Type: | Int64[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Partial
指示还原操作是部分还原。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
指示此 cmdlet 输出用于执行还原操作的 Smo.Backup 对象。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
指定要对其执行还原操作的SQL Server实例的路径。 此参数是可选的。 如果未指定,则使用当前工作位置。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RelocateFile
指定 Smo.Relocate 文件对象的列表。 每个对象都由一个逻辑备份文件名和一个物理文件系统位置组成。 还原操作将已还原的数据库移到目标服务器上的指定物理位置。
Type: | RelocateFile[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ReplaceDatabase
指示创建了数据库的新映像。 这会覆盖同名的任何现有数据库。 如果未设置,则当服务器上已存在具有该名称的数据库时,还原操作将失败。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Restart
指示此 cmdlet 恢复部分完成的还原操作。 如果未设置,cmdlet 会在备份集开始时重新启动中断的还原操作。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RestoreAction
指定执行的还原操作的类型。 有效值为:
- 数据库。 数据库已还原。
- 文件存储。 还原一个或多个数据文件。 必须指定 DatabaseFile 或 DatabaseFileGroup 参数。
- OnlinePage。 数据页联机还原,以便数据库可供用户使用。
- OnlineFiles。 数据文件联机还原,以便数据库仍可供用户使用。 必须指定 DatabaseFile 或 DatabaseFileGroup 参数。
- 日志。 事务处理日志已还原。
Type: | RestoreActionType |
Accepted values: | Database, Files, OnlinePage, OnlineFiles, Log |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RestrictedUser
指示对还原的数据库的访问仅限于db_owner固定数据库角色以及 dbcreator 和 sysadmin 固定服务器角色。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Script
指示此 cmdlet 输出执行还原操作的 Transact-SQL 脚本。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ServerInstance
指定SQL Server实例的名称。 此服务器实例成为还原操作的目标。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-SqlCredential
指定存储身份验证信息的SQL Server凭据对象。 如果要备份到 Blob 存储服务,则必须指定此参数。 存储的身份验证信息包括存储帐户名称和关联的访问密钥值。 不要为磁盘或磁带指定此参数。
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-StandbyFile
指定撤消文件的名称,该文件用作SQL Server实例的映像策略的一部分。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-StopAtMarkAfterDate
指定要与 StopAtMarkName 参数指定的标记名称一起使用的日期,以确定恢复操作的停止点。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-StopAtMarkName
指定停止恢复操作的标记事务。 这与 StopAtMarkAfterDate 一起使用,以确定恢复操作的停止点。 恢复的数据包括包含标记的事务。 如果未设置 StopAtMarkAfterDate 值,恢复会在具有指定名称的第一个标记处停止。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-StopBeforeMarkAfterDate
指定要与 StopBeforeMarkName 一起使用以确定恢复操作的停止点的日期。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-StopBeforeMarkName
指定要停止恢复操作之前的标记事务。 这与 StopBeforeMarkAfterDate 一起使用,以确定恢复操作的停止点。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ToPointInTime
指定用于数据库日志还原的终结点。 这仅适用于 RestoreAction 设置为 Log 时。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TrustServerCertificate
指示是否在绕过证书链以验证信任时对通道进行加密。
在模块的 v22 中,默认 $true
为 (,以便与 v21) 兼容。 在模块的 v23+ 中,默认值为“$false”,这可能会为现有脚本创建中断性变更。
此参数是模块 v22 中的新增参数。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UnloadTapeAfter
指示操作完成后,磁带设备将重新卷绕并卸载。 如果未设置,则不会尝试倒带和卸载磁带介质。 这不适用于磁盘备份。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
显示运行该 cmdlet 时会发生什么情况。 此 cmdlet 未运行。
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
输入
Microsoft.SqlServer.Management.Smo.Database
Microsoft.SqlServer.Management.Smo.Server[]
指定 SMO。描述执行还原操作的 SQL Server 实例的服务器对象。
System.String[]