sp_apply_job_to_targets (Transact-SQL)

适用于SQL Server

将作业应用于一个或多个目标服务器或属于一个或多个目标服务器组的目标服务器。

Transact-SQL 语法约定

语法

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. 有效的操作是 APPLYREMOVE

返回代码值

0(成功)或 1(失败)。

注解

sp_apply_job_to_targets提供从多个目标服务器应用(或删除)作业的简单方法,并且是调用所需的每个目标服务器的一次(或sp_delete_jobserver)的替代方法sp_add_jobserver

权限

此存储过程由 db_owner 角色拥有。 你可以为任何用户授予 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