Transact-SQL 参考

sp_post_msx_operation

向系统表 sysdownloadlist 中插入操作(行),以供目标服务器下载和执行。

语法

sp_post_msx_operation [ @operation = ] 'operation'
    
[ , [ @object_type = ] 'object' ]
    { , [ @job_id = ] job_id }
    
[ , [ @specific_target_server = ] 'target_server' ]
    [ , [ @value = ] value ]

参数

[@operation =] 'operation'

是被发布操作的操作类型。operation 的数据类型为 varchar(64),无默认值。有效的操作取决于 object_type

对象类型 操作
JOB INSERT
UPDATE
DELETE
START
STOP
SERVER RE-ENLIST
DEFECT
SYNC-TIME
SET-POLL

[@object_type =] 'object'

是为之发布操作的对象的类型。有效的类型是 JOBSERVERobjectvarchar(64) 类型,其默认值为 JOB

[@job_id =] job_id

是操作所要应用的作业的作业标识号。job_id 的数据类型为 uniqueidentifier,无默认值。0x00 表示"所有"作业。如果 object SERVER,则不需要 job_id

[@specific_target_server =] 'target_server'

是指定操作所要应用的目标服务器的名称。如果指定了 job_id,但未指定 target_server,那么此操作将向该作业的所有作业服务器发布。target_server 的数据类型为 nvarchar(30),默认值为 NULL。

[@value =] value

是轮询间隔,以秒为单位。value 的数据类型为 int,默认值为 NULL。只有当 operationSET-POLL 类型时,才指定此参数。

返回代码值

0(成功)或 1(失败)

结果集

注释

sp_post_msx_operation 必须从 msdb 数据库中运行。

sp_post_msx_operation 总可以安全地调用,因为它首先确定当前服务器是否为多服务器 SQL Server 代理,若是,再判断 object 是否为多服务器作业。

操作发布后,将记录在表 sysdownloadlist 中。创建并发布作业后,对该作业的后续更改也必须通知目标服务器 (TSX)。这也是用下载列表完成的。

建议最好用 SQL Server 企业管理器来管理下载列表。有关更多信息,请参见修改及查看作业

权限

任何人均可执行此过程,但是只有 sysadmin 固定服务器角色的成员执行此过程才会有作用。

请参见

sp_add_jobserver

sp_delete_job

sp_delete_jobserver

sp_delete_targetserver

sp_resync_targetserver

sp_start_job

sp_stop_job

sp_update_job

sp_update_operator

系统存储过程