禁用由 @job_id 参数标识的复制强制代理程序的远程强制代理程序激活。该存储过程在发布服务器的发布数据库上执行。
sp_disableagentoffload [ @job_id = ] job_id
[ , [ @offloadserver = ] 'remote_agent_server_name' ]
[ , [ @agent_type = ] 'agent_type' ]
[@job_id = ] 'job_id'
指定从远程激活禁用复制代理程序的 SQL Server 代理程序作业标识符。job_id 的数据类型为 varbinary(16),没有默认设置。
[@offloadserver = ] 'remote_agent_server_name'
指定用于远程代理程序激活的服务器的网络名称。remote_agent_server_name 的数据类型为 sysname,默认设置为 NULL。如果是 NULL,则使用 MSDistribution_agents 表中的当前 offload_server。
是代理程序类型。agent_type 的数据类型为 sysname,默认设置为 NULL,用以指定系统将确定代理程序类型是 distribution 还是 merge。有效值为 distribution、merge 或 NULL。
0(成功)或 1(失败)
sp_disableagentoffload 用于删除在另一台服务器上运行分发代理程序或合并代理程序处理的能力。
成功完成 sp_disableagentoffload 后,将立即从复制代理程序命令行删除 Offload offloadserver 参数。另外,MSDistribution_agents 中用于代理程序的 offload_enabled 字段将设置为 0,offload-server 字段将更新为 'remote_agent_server_name' 中指定的新值(如果提供了新值)。
只有 sysadmin 固定服务器角色成员、db_owner 固定数据库角色成员或者指定代理程序的订阅所有者才能执行 sp_disableagentoffload。