Get-SqlBackupHistory

获取有关数据库的备份信息,并返回基于为此 cmdlet 指定的参数找到的每个备份记录的 SMO BackupSet 对象。

语法

Get-SqlBackupHistory
   [-Since <SinceType>]
   [-StartTime <DateTime>]
   [-EndTime <DateTime>]
   [-BackupType <BackupSetType>]
   [-IncludeSnapshotBackups]
   [-TimeSpan <TimeSpan>]
   [-IgnoreProviderContext]
   [-SuppressProviderContextWarning]
   [[-Path] <String[]>]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-DatabaseName <System.Collections.Generic.List`1[System.String]>]
   [<CommonParameters>]
Get-SqlBackupHistory
   [-Since <SinceType>]
   [-StartTime <DateTime>]
   [-EndTime <DateTime>]
   [-BackupType <BackupSetType>]
   [-IncludeSnapshotBackups]
   [-TimeSpan <TimeSpan>]
   [-IgnoreProviderContext]
   [-SuppressProviderContextWarning]
   [[-ServerInstance] <String[]>]
   [-Credential <PSCredential>]
   [-ConnectionTimeout <Int32>]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-DatabaseName <System.Collections.Generic.List`1[System.String]>]
   [<CommonParameters>]
Get-SqlBackupHistory
   [-Since <SinceType>]
   [-StartTime <DateTime>]
   [-EndTime <DateTime>]
   [-BackupType <BackupSetType>]
   [-IncludeSnapshotBackups]
   [-TimeSpan <TimeSpan>]
   [-IgnoreProviderContext]
   [-SuppressProviderContextWarning]
   [-InputObject] <Server[]>
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-DatabaseName <System.Collections.Generic.List`1[System.String]>]
   [<CommonParameters>]

说明

此 cmdlet 搜索服务器实例,并获取与指定参数匹配的所有记录的 SMO BackupSet 对象备份记录。

示例

示例 1

PS C:\> Get-SqlBackupHistory -ServerInstance test-server -DatabaseName AdventureWorks2014

Name                                     Type               Backup Start Date         Backup Finish Date
----                                     ----               -----------------         ------------------
AdventureWorks2014-Full Database Backup  Database           2/21/2017 7:52:39 PM      2/21/2017 7:52:40 PM
AdventureWorks2014-Full Database Backup  Database           3/20/2017 2:41:39 PM      3/20/2017 2:41:39 PM
AdventureWorks2014-Full-2017-07-24T22:22 Database           7/24/2017 3:23:11 PM      7/24/2017 3:23:11 PM

此示例获取测试服务器 SQL 实例上 AdventureWorks2014 数据库的所有备份类型的记录。

参数

-AccessToken

用于对SQL Server进行身份验证的访问令牌,作为用户/密码或 Windows 身份验证的替代方法。

例如,这可用于连接到 SQL Azure DB 和使用 SQL Azure Managed InstanceService PrincipalManaged 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

-BackupType

要筛选的备份类型。 如果未指定,则获取所有备份类型。 接受的值定义如下。

Type:BackupSetType
Accepted values:Database, Differential, Incremental, Log, FileOrFileGroup, FileOrFileGroupDifferential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ConnectionTimeout

等待建立连接并填充动态生成的 -DatabaseName 参数的时间(以秒为单位)。

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

其用户名和密码字段用于连接到 SQL 实例的 PSCredential 对象。

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DatabaseName

要检索其备份记录的数据库的名称。 这是一个动态填充的字段,因此提供有关数据库名称的自动完成建议。

Type:System.Collections.Generic.List`1[System.String]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
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

-EndTime

要检索的所有备份记录之前应完成的时间。

Type:DateTime
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

-IgnoreProviderContext

指示此 cmdlet 不使用当前上下文替代 ServerInstanceDatabaseName 参数的值。 如果未指定此参数,则 cmdlet 会忽略这些参数的值(如果可能),转而使用运行 cmdlet 的上下文。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IncludeSnapshotBackups

此开关也会使 cmdlet 获取快照备份的记录。 默认情况下,不会检索此类备份。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

指定要获取其备份记录的 SMO 服务器对象。

Type:Server[]
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Path

指定用于获取 BackupSet 的 cmdlet 的服务器实例或数据库的 SQL 提供程序路径。 如果未指定,则使用当前工作位置。

Type:String[]
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ServerInstance

此 cmdlet 将面向的服务器实例的名称。

Type:String[]
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Since

指定可以代替 StartTime 参数的缩写。

可以使用 EndTime 参数指定它。

如果使用此参数,则不能使用 StartTime 参数。

此参数的可接受值为:

  • 午夜 (获取午夜后生成的所有作业历史记录信息)
  • 昨天 (获取过去 24 小时内生成的所有作业历史记录信息)
  • 上一周 (获取上周生成的所有作业历史记录信息)
  • LastMonth (获取上个月生成的所有作业历史记录信息)
Type:SinceType
Accepted values:Midnight, Yesterday, LastWeek, LastMonth
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-StartTime

获取在此指定时间之后启动的备份记录。

Type:DateTime
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SuppressProviderContextWarning

当 cmdlet 使用提供程序上下文时,禁止显示警告。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TimeSpan

如果指定,则会导致 cmdlet 筛选在“Timespan”之前生成的记录。

Type:TimeSpan
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

输入

System.String[]

Microsoft.SqlServer.Management.Smo.Server[]

输出

System.Object