向发布服务器添加新的订阅服务器,使其能够接收发布。此存储过程在发布服务器的发布数据库上执行。
sp_addsubscriber [ @subscriber = ] 'subscriber'
[ , [ @type = ] type ]
[ , [ @login = ] 'login' ]
[ , [ @password = ] 'password' ]
[ , [ @commit_batch_size = ] commit_batch_size ]
[ , [ @status_batch_size = ] status_batch_size ]
[ , [ @flush_frequency = ] flush_frequency ]
[ , [ @frequency_type = ] frequency_type ]
[ , [ @frequency_interval = ] frequency_interval ]
[ , [ @frequency_relative_interval = ] frequency_relative_interval ]
[ , [ @frequency_recurrence_factor = ] frequency_recurrence_factor ]
[ , [ @frequency_subday = ] frequency_subday ]
[ , [ @frequency_subday_interval = ] frequency_subday_interval ]
[ , [ @active_start_time_of_day = ] active_start_time_of_day ]
[ , [ @active_end_time_of_day = ] active_end_time_of_day ]
[ , [ @active_start_date = ] active_start_date ]
[ , [ @active_end_date = ] active_end_date ]
[ , [ @description = ] 'description' ]
[ , [ @security_mode = ] security_mode ]
[ , [ @encrypted_password = ] encrypted_password ]
[@subscriber = ] 'subscriber'
是要作为有效订阅服务器添加到服务器上发布的服务器名称。subscriber 的数据类型为 sysname,没有默认设置。
[@type = ] type
是订阅服务器的类型。type 的数据类型为 tinyint,可以是下列值之一。
值 | 描述 |
---|---|
0(默认值) | Microsoft® SQL Server™ 订阅服务器 |
1 | ODBC 数据源服务器 |
2 | Microsoft Jet 数据库 |
3 | OLE DB 提供程序 |
[ @login = ] 'login'
是 SQL Server 身份验证的登录 ID。login 的数据类型为 sysname,默认设置为 sa。
[@password = ] 'password'
是 SQL Server 身份验证的密码。password 的数据类型为 sysname,默认设置为 NULL。
[@commit_batch_size = ] commit_batch_size
仅为保持向后兼容性。
[@status_batch_size = ] status_batch_size
仅为保持向后兼容性。
[@flush_frequency = ] flush_frequency
仅为保持向后兼容性。
[@frequency_type = ] frequency_type
是调度分发代理程序所用的频率。frequency_type 的数据类型为 int,可以是下列值之一。
值 | 描述 |
---|---|
1 | 一次 |
2 | 按需 |
4 | 每天 |
8 | 每周 |
16 | 每月 |
32 | 每月相对信息 |
64(默认值) | 自动启动 |
124 | 反复出现 |
[@frequency_interval = ] frequency_interval
是应用于 frequency_type 所设置频率的值。frequency_interval 的数据类型为 int,默认设置为 1。
[@frequency_relative_interval = ] frequency_relative_interval
是分发代理程序运行的日期。当 frequency_type 设置为 32(每月相对信息)时使用该参数。frequency_relative_interval 的数据类型为 int,可以是下列值之一。
值 | 描述 |
---|---|
1(默认值) | 第一个 |
2 | 秒 |
4 | 第三个 |
8 | 第四个 |
16 | 最后一个 |
[@frequency_recurrence_factor = ] frequency_recurrence_factor
是 frequency_type 使用的重复因子。frequency_recurrence_factor 的数据类型为 int,默认设置为 0。
[@frequency_subday = ] frequency_subday
是在定义的周期内重新调度的频率。frequency_subday 的数据类型为 int,可以是下列值之一。
值 | 描述 |
---|---|
1 | 一次 |
2 | 秒 |
4(默认值) | 分钟 |
8 | 小时 |
[@frequency_subday_interval = ] frequency_subday_interval
是 frequency_subday 的间隔。frequency_subday_interval 的数据类型为 int,默认设置为 5。
[@active_start_time_of_day = ] active_start_time_of_day
是第一次调度分发代理程序的时间,格式为 HHMMSS。active_start_time_of_day 的数据类型为 int,默认设置为 0。
[@active_end_time_of_day = ] active_end_time_of_day
是停止调度分发代理程序的时间,格式为 HHMMSS。active_end_time_of_day 的数据类型为 int,默认设置为 235959,表示 24 小时制的 11:59:59 P.M.。
[@active_start_date = ] active_start_date
是第一次调度分发代理程序的日期,格式为 YYYYMMDD。active_start_date 的数据类型为 int,默认设置为 0。
[@active_end_date = ] active_end_date
是停止调度分发代理程序的日期,格式为 YYYYMMDD。active_end_date 的数据类型为 int,默认设置为 99991231,表示 9999 年 12 月 31 日。
[@description = ] 'description'
是对订阅服务器的文本描述。description 的数据类型为 nvarchar(255),默认设置为 NULL。
[@security_mode = ] security_mode
是实现的安全模式。security_mode 的数据类型为 int,默认设置为 1。0 指定 SQL Server 身份验证。1 指定 Windows 身份验证。
[@encrypted_password = ] encrypted_password
仅限内部使用。
0(成功)或 1(失败)
sp_addsubscriber 用于快照复制、事务复制和合并复制。
sp_addsubscriber 写入 distribution 数据库内的 MSsubscriber_info 表。
只有 sysadmin 固定服务器角色成员才能执行 sp_addsubscriber。