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'
将为其发布操作的对象的类型。 有效类型为 JOB、SERVER 以及 SCHEDULE。 object 的数据类型为 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_jobserver (Transact-SQL)
sp_delete_targetserver (Transact-SQL)
sp_resync_targetserver (Transact-SQL)