Get-SqlAgentJob

获取 SQL 代理的目标实例中存在的每个作业的 SQL 代理作业对象。

语法

Get-SqlAgentJob
   [[-Name] <String>]
   [[-Path] <String>]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-ProgressAction <ActionPreference>]
   [<CommonParameters>]
Get-SqlAgentJob
   [[-ServerInstance] <String[]>]
   [-Credential <PSCredential>]
   [-ConnectionTimeout <Int32>]
   [[-Name] <String>]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-ProgressAction <ActionPreference>]
   [<CommonParameters>]
Get-SqlAgentJob
   [[-Name] <String>]
   [-InputObject] <JobServer>
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-ProgressAction <ActionPreference>]
   [<CommonParameters>]

说明

Get-SqlAgentJob cmdlet 获取 SQL 代理目标实例中存在的每个作业的 SQL 代理作业对象。 如果提供了作业的名称,则 cmdlet 仅获取此特定作业对象。

此 cmdlet 支持以下操作模式来获取作业对象的集合:

  • 指定 SQL 代理实例的路径。
  • 在输入中传递 SQL 代理的实例。
  • 在有效上下文中调用 cmdlet。

示例

示例 1:从指定的服务器实例获取所有作业实例

PS C:\> Get-SqlAgent -ServerInstance MyServerInstance | Get-SqlAgentJob
Name                      Owner                Category                  Enabled    CurrentRunStatus     DateCreated               LastModified              JobID
----                      -----                --------                  -------    ----------------     -----------               ------------              -----
MyJob1                    Owner                [Uncategorized (Local)]   True       Idle                 6/2/2016 10:21:44 AM      6/2/2016 10:21:44 AM      841255df-06e8-43ef-b798-3... 
MyJob2                    Owner                [Uncategorized (Local)]   True       Idle                 5/31/2016 2:40:58 PM      6/1/2016 5:09:40 PM       995b296a-cd35-4505-868a-3... 
MyJob3                    Owner                [Uncategorized (Local)]   True       Idle                 5/25/2016 12:13:56 PM     5/25/2016 12:13:56 PM     01d2e61a-9a90-4f77-98f4-e...

此命令获取名为“MyServerInstance”的服务器实例中的所有作业实例。

示例 2:按名称从指定的服务器实例获取作业实例

PS C:\> Get-SqlAgent -ServerInstance MyServerInstance | Get-SqlAgentJob -Name MyJob1
Name                      Owner                Category                  Enabled    CurrentRunStatus     DateCreated               LastModified              JobID
----                      -----                --------                  -------    ----------------     -----------               ------------              -----
MyJob1                    Owner                [Uncategorized (Local)]   True       Idle                 6/2/2016 10:21:44 AM      6/2/2016 10:21:44 AM      841255df-06e8-43ef-b798-3...

此命令在名为“MyServerInstance”的服务器实例中获取名为“MyJob1”的作业实例。

参数

-AccessToken

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

例如,这可用于使用 Service PrincipalManaged Identity连接到 SQL Azure DBSQL Azure Managed Instance

要使用的参数可以是表示令牌的字符串,也可以是运行 Get-AzAccessToken -ResourceUrl https://database.windows.net返回的 PSAccessToken 对象。

此参数是模块 v22 中的新增参数。

类型:PSObject
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ConnectionTimeout

指定在超时失败之前等待服务器连接的秒数。 超时值必须是介于 0 和 65534 之间的整数值。 如果指定了 0,则连接尝试不会超时。

类型:Int32
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Credential

指定一个 PSCredential 对象,该对象用于指定有权执行此操作的 SQL Server 登录名的凭据。

类型:PSCredential
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Encrypt

连接到 SQL Server 时要使用的加密类型。

此值映射到 Microsoft.Data.SqlClient 驱动程序的 SqlConnection 对象的 Encrypt 属性 SqlConnectionEncryptOption

在模块的 v22 中,默认为 Optional(为了与 v21 兼容)。 在模块的 v23+ 中,默认值为“必需”,这可能会为现有脚本创建中断性变更。

此参数是模块 v22 中的新增参数。

类型:String
接受的值:Mandatory, Optional, Strict
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-HostNameInCertificate

用于验证 SQL Server TLS/SSL 证书的主机名。 如果为强制加密启用了 SQL Server 实例,并且想要使用主机名/shortname 连接到实例,则必须传递此参数。 如果省略此参数,则必须将完全限定域名(FQDN)传递给 -ServerInstance 才能连接到为强制加密启用的 SQL Server 实例。

此参数是模块 v22 中的新增参数。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-InputObject

指定一个 SQL 管理对象 (SMO) 对象,该对象表示所面向的 SQL Server 代理。

类型:JobServer
Position:2
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-Name

指定此 cmdlet 获取的 Job 对象的名称。 名称可能不区分大小写,具体取决于运行 SQL 代理的 SQL Server 的排序规则。

类型:String
Position:1
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Path

指定运行操作的 SQL Server 代理的路径。 如果未为此参数指定值,cmdlet 将使用当前工作位置。

类型:String
Position:2
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ProgressAction

确定 PowerShell 如何响应脚本、cmdlet 或提供程序生成的进度更新,例如由 Write-Progress cmdlet 生成的进度栏。 Write-Progress cmdlet 创建显示命令状态的进度栏。

类型:ActionPreference
别名:proga
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ServerInstance

指定作为字符串数组,指定运行 SQL 代理的位置的 SQL Server 实例的名称。 对于默认实例,仅指定计算机名称:MyComputer。 对于命名实例,请使用 ComputerName\InstanceName 格式。

类型:String[]
Position:2
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-TrustServerCertificate

指示通道是否在绕过证书链以验证信任的同时进行加密。

在模块的 v22 中,默认为 $true(为了与 v21 兼容)。 在模块的 v23+ 中,默认值将为“$false”,这可能会为现有脚本创建中断性变更。

此参数是模块 v22 中的新增参数。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

输出

System.Object