sp_post_msx_operation (Transact-SQL)

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

语法

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

参数

[ @operation =] 'operation'

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

对象类型 操作

JOB

INSERT

UPDATE

DELETE

START

STOP

SERVER

RE-ENLIST

DEFECT

SYNC-TIME

SET-POLL

SCHEDULE

INSERT

UPDATE

DELETE

[ @object_type =] 'object'

将为其发布操作的对象的类型。有效类型为 JOBSERVER 以及 SCHEDULEobject 的数据类型为 varchar(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。仅当 operation 的数据类型为 SET-POLL 时才指定此参数。

[ @schedule_uid= ] schedule_uid

应用操作的计划的唯一标识符。schedule_uid 的数据类型为 uniqueidentifier,无默认值。

返回代码值

0(成功)或 1(失败)

结果集

备注

sp_post_msx_operation 必须基于 msdb 数据库运行。

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

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

我们强烈建议使用 SQL Server Management Studio 来管理下载列表。有关详细信息,请参阅查看和修改作业

权限

若要运行此存储过程,必须授予用户 sysadmin 固定服务器角色。

请参阅

参考

sp_add_jobserver (Transact-SQL)
sp_delete_job (Transact-SQL)
sp_delete_jobserver (Transact-SQL)
sp_delete_targetserver (Transact-SQL)
sp_resync_targetserver (Transact-SQL)
sp_start_job (Transact-SQL)
sp_stop_job (Transact-SQL)
sp_update_job (Transact-SQL)
sp_update_operator (Transact-SQL)
系统存储过程 (Transact-SQL)

帮助和信息

获取 SQL Server 2005 帮助