sp_help_proxy (Transact-SQL)

适用于:SQL Server

列出一个或多个代理的信息。

Transact-SQL 语法约定

语法

  
sp_help_proxy   
    [ @proxy_id = ] id,  
    [ @proxy_name = ] 'proxy_name' ,  
    [ @subsystem_name = ] 'subsystem_name' ,  
    [ @name = ] 'name'  

自变量

[ @proxy_id = ] id 要列出其信息的代理的代理标识号。 proxy_idint,默认值为 NULL。 可以指定 IDproxy_name

[ @proxy_name = ] 'proxy_name' 要列出其信息的代理的名称。 proxy_namesysname,默认值为 NULL。 可以指定 IDproxy_name

[ @subsystem_name = ] 'subsystem_name' 要列出其代理的子系统的名称。 subsystem_namesysname,默认值为 NULL。 指定 subsystem_name 时,还必须指定 名称

下表列出了每个子系统的值。

说明
ActiveScripting ActiveX 脚本
CmdExec 操作系统 (CmdExec)
快照 复制快照代理
LogReader 复制日志读取器代理
分发 复制分发代理
合并 Replication Merge Agent
QueueReader 复制队列读取器代理
ANALYSISQUERY Analysis Services 命令
ANALYSISCOMMAND Analysis Services 查询
Dts SSIS 包执行
PowerShell PowerShell 脚本

[ @name = ] 'name'要列出代理的SQL Server登录名。 名称为 nvarchar (256) ,默认值为 NULL。 指定 名称 时,还必须指定 subsystem_name

返回代码值

0 (成功) 或 1 (失败)

结果集

列名称 数据类型 说明
proxy_id int 代理服务器标识号。
name sysname 代理服务器的名称。
credential_identity sysname 与代理关联的凭据的 Microsoft Windows 域名和用户名。
enabled tinyint 是否启用了此代理。 { 0 = 未启用, 1 = enabled }
description nvarchar(1024) 对此代理的说明。
user_sid varbinary(85) 此代理的 Windows 用户的 Windows 安全 ID。
credential_id int 与此代理关联的凭据的标识符。
credential_identity_exists int 是否存在 credential_identity。 { 0 = 不存在,1 = 存在 }

备注

如果未提供任何参数, sp_help_proxy 会列出实例中所有代理的信息。

若要确定登录名可用于给定子系统的代理,请指定名称和subsystem_name。 提供这些参数时, sp_help_proxy 列出指定的登录名可以访问的代理,以及可用于指定子系统的代理。

权限

默认情况下,只有 sysadmin 固定服务器角色的成员才可以执行此存储过程。 其他用户必须被授予 msdb 数据库中的 SQLAgentOperatorRole 固定数据库角色的权限。

有关 SQLAgentOperatorRole 的详细信息,请参阅SQL Server 代理固定数据库角色

注意

仅当 sysadmin 的成员执行此存储过程时,才会在结果集中返回credential_identity列和user_sid列。

示例

A. 列出所有代理的信息

以下示例将列出实例中所有代理的信息。

USE msdb ;  
GO  
  
EXEC dbo.sp_help_proxy ;  
GO  

B. 列出指定代理的信息

以下示例将列出名为 Catalog application proxy 的代理的信息。

USE msdb ;  
GO  
  
EXEC dbo.sp_help_proxy  
    @proxy_name = N'Catalog application proxy' ;  
GO  

另请参阅

SQL Server 代理存储过程 (Transact-SQL)
sp_add_proxy (Transact-SQL)
sp_delete_proxy (Transact-SQL)