在 sysservers 表中创建一项(如果 sysservers 表中没有条目),将服务器项标记为分发服务器,并存储属性信息。此存储过程在分发服务器的主数据库上执行,将服务器注册并标记为分发服务器。在远程分发服务器的情况中,此存储过程还在发布服务器的主数据库上执行以注册远程分发服务器。
sp_adddistributor [ @distributor = ] 'distributor'
[ , [ @heartbeat_interval = ] heartbeat_interval ]
[ , [ @password = ] 'password' ]
[ , [ @from_scripting = ] from_scripting ]
[@distributor = ] 'distributor'
是分发服务器名称。distributor 的数据类型为 sysname,没有默认设置。如果设置远程分发服务器,则仅使用此参数。它在 msdb..MSdistributor 表中添加分发服务器属性项。
[@heartbeat_interval = ] heartbeat_interval
是代理程序在不记录进度消息的情况下可以运行的最长分钟数。heartbeat_interval 的数据类型为 int,默认值为 10 分钟。创建按该间隔唤醒的 SQL 代理程序作业,以检查正在运行的复制代理程序的状态。
[@password = ] 'password']
是 distributor_admin 登录的密码。password 的数据类型为 sysname,默认设置为 NULL。如果是 NULL 或 N,则密码重置为随机值。当添加第一台不信任的远程分发服务器时,必须配置该密码。存储用于 distributor RPC 连接(包括本地连接)的链接服务器项的 distributor_admin 登录和 password。如果 distributor 是本地分发服务器,则 distributor_admin 的密码将设置为新值。
[@from_scripting = ] from_scripting
仅限内部使用。
0(成功)或 1(失败)
sp_adddistributor 用于快照复制、事务复制和合并复制。
只有 sysadmin 固定服务器角色成员才能执行 sp_adddistributor。