sp_help_proxy (Transact-SQL)
列出一个或多个代理的信息。
语法
sp_help_proxy
[ @proxy_id = ] id,
[ @proxy_name = ] 'proxy_name' ,
[ @subsystem_name = ] 'subsystem_name' ,
[ @name = ] 'name'
参数
[ @proxy_id= ] id
要列出信息的代理的代理标识号。proxy_id 的数据类型为 int,默认值为 NULL。可以指定 id 或 proxy_name。[ @proxy_name= ] 'proxy_name'
要列出信息的代理的名称。proxy_name 的数据类型为 sysname,默认值为 NULL。可以指定 id 或 proxy_name。[ @subsystem_name = ] 'subsystem_name'
要列出代理的子系统名称。subsystem_name 的数据类型为 sysname,默认值为 NULL。如果指定了 subsystem_name,则也必须指定 name。下表列出了每个子系统的值。
值
说明
ActiveScripting
ActiveX 脚本
CmdExec
操作系统 (CmdExec)
Snapshot
复制快照代理
LogReader
复制日志读取器代理
Distribution
复制分发代理
Merge
复制合并代理
QueueReader
复制队列读取器代理
ANALYSISQUERY
Analysis Services 命令
ANALYSISCOMMAND
Analysis Services 查询
Dts
SSIS 包执行
PowerShell
PowerShell 脚本
[ @name = ] 'name'
要为其列出代理的 SQL Server 登录名的名称。该名称是 nvarchar(256),默认值为 NULL。如果指定了 name,则也必须指定 subsystem_name。
返回代码值
0(成功)或 1(失败)
结果集
列名 |
数据类型 |
说明 |
---|---|---|
proxy_id |
int |
代理标识号。 |
name |
sysname |
代理的名称。 |
credential_identity |
sysname |
与代理关联的凭据的 Microsoft Windows 域名和用户名。 |
enabled |
tinyint |
是否启用了此代理。{ 0 = 未启用,1 = 启用 } |
description |
nvarchar(1024) |
对此代理的说明。 |
user_sid |
varbinary(85) |
此代理的 Windows 用户的 Windows 安全 ID。 |
credential_id |
int |
与此代理关联的凭据的标识符。 |
credential_identity_exists |
int |
是否存在 credential_identity。{ 0 = 不存在,1 = 存在 } |
注释
如果不提供参数,则 sp_help_proxy 将列出实例中所有代理的信息。
若要确定登录名可用于给定子系统的代理,请指定 name 和 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