sp_apply_job_to_targets (Transact-SQL)
适用范围:SQL Server
将作业应用于一个或多个目标服务器或属于一个或多个目标服务器组的目标服务器。
语法
sp_apply_job_to_targets
[ [ @job_id = ] 'job_id' ]
[ , [ @job_name = ] N'job_name' ]
[ , [ @target_server_groups = ] N'target_server_groups' ]
[ , [ @target_servers = ] N'target_servers' ]
[ , [ @operation = ] 'operation' ]
[ ; ]
参数
[ @job_id = ] 'job_id'
要应用于指定目标服务器或目标服务器组的作业的标识号。 @job_id是 uniqueidentifier,默认值为 NULL
.
必须指定@job_id或@job_name,但不能指定这两者。
[ @job_name = ] N'job_name'
要应用于指定的相关目标服务器或目标服务器组的作业的名称。 @job_name为 sysname,默认值为 NULL
.
必须指定@job_id或@job_name,但不能指定这两者。
[ @target_server_groups = ] N'target_server_groups'
以逗号分隔的目标服务器组的列表,指定的作业将应用于这些服务器组。 @target_server_groups为 nvarchar(2048),默认值为 NULL
.
[ @target_servers = ] N'target_servers'
以逗号分隔的目标服务器的列表,指定的作业将应用于这些服务器。 @target_servers为 nvarchar(2048),默认值为 NULL
.
[ @operation = ] 'operation'
指定指定作业是应用于指定目标服务器还是从目标服务器或目标服务器组中删除。 @operation为 varchar(7),默认值为 APPLY
. 有效的操作是 APPLY
和 REMOVE
。
返回代码值
0
(成功)或 1
(失败)。
注解
sp_apply_job_to_targets
提供从多个目标服务器应用(或删除)作业的简单方法,并且是调用所需的每个目标服务器的一次(或sp_delete_jobserver
)的替代方法sp_add_jobserver
。
权限
可以授予 EXECUTE
此过程的权限,但在 SQL Server 升级期间可能会重写这些权限。
示例
以下示例将以前创建的 Backup Customer Information
作业应用于 Servers Maintaining Customer Information
组中的所有目标服务器。
USE msdb;
GO
EXEC dbo.sp_apply_job_to_targets
@job_name = N'Backup Customer Information',
@target_server_groups = N'Servers Maintaining Customer Information',
@operation = N'APPLY' ;
GO