将作业应用到一个或多个目标服务器或属于一个或多个目标服务器组的目标服务器。
sp_apply_job_to_targets [ @job_id = ] job_id | [ @job_name = ] 'job_name'
[ , [ @target_server_groups = ] 'target_server_groups' ]
[ , [ @target_servers = ] 'target_servers' ]
[ , [ @operation = ] 'operation' ]
[@job_id =] job_id
要应用于指定目标服务器或目标服务器组的作业的作业标识编号。job_id 的数据类型为 uniqueidentifier,默认值为 NULL。
[@job_name =] 'job_name'
要应用于指定的相关目标服务器或目标服务器组的作业的名称。job_name 的数据类型为 sysname,默认值为 NULL。
说明 必须指定 job_id 或 job_name,但不能两个都指定。
[@target_server_groups =] 'target_server_groups'
以逗号分隔的目标服务器组的列表,指定的作业将应用于这些服务器组。target_server_groups 的数据类型为 nvarchar(1024),默认值为 NULL。
[@target_servers =] 'target_servers'
以逗号分隔的目标服务器的列表,指定的作业将应用于这些服务器。target_servers 的数据类型为 nvarchar(1024),默认值为 NULL。
[@operation =] 'operation'
指出是将指定的作业应用于指定的目标服务器或目标服务器组,还是将其从指定的目标服务器或目标服务器组删除。operation 的数据类型为 varchar(7),默认值为 APPLY。有效的操作为 APPLY 和 REMOVE。
0(成功)或 1(失败)
sp_apply_job_to_targets 提供向多个目标服务器应用作业或将其从多个目标服务器删除的简单方法,而不用对每个要求的目标服务器调用一次 sp_add_jobserver(或 sp_delete_jobserver)。
只有 sysadmin 固定服务器角色的成员才能执行 sp_apply_job_to_targets。
下面的示例将以前创建的 Backup Customer Information 作业应用于 Servers Maintaining Customer Information 组中的所有目标服务器。
USE msdb
EXEC sp_apply_job_to_targets @job_name = 'Backup Customer Information', @target_server_groups = 'Servers Maintaining Customer Information',
@operation = 'APPLY'