订阅是对发布中的数据和数据库对象副本的请求。 订阅定义将接收哪些出版物,以及在哪里和何时接收出版物。 规划订阅时,请考虑选择代理处理将在哪里进行的位置。 选择的订阅类型控制代理的运行位置。 使用推送订阅时,合并代理或分发代理在分发服务器上运行,而对于请求订阅,代理在订阅服务器上运行。 创建订阅后,无法将其从一种类型更改为另一种类型。
订阅 | 特征 | 使用时机 |
---|---|---|
推送订阅 | 通过推送订阅,发布者无需订阅者请求就可以将更改传递给订阅者。 可以按需、持续或按计划将更改推送到订阅服务器。 分发代理或合并代理在分发服务器上运行。 | 数据通常会持续同步或按频繁的周期性计划同步。 出版物需要准实时的数据传输。 分发服务器的处理器开销较高不会影响性能。 最常用于快照和事务复制。 |
拉取订阅 | 使用提取订阅时,订阅服务器请求发布服务器上所做的更改。 请求订阅允许用户在订阅服务器上确定数据更改何时同步。 分发代理或合并代理运行于订阅服务器。 | 数据通常按需或按计划同步,而不是连续同步。 发布物有大量的订阅者,并且/或者在分发方运行所有代理过于消耗资源。 订阅者是自主的、断开连接的和/或可移动的。 订阅者将确定何时连接和同步更改。 最常用于合并复制。 |
合并复制订阅类型
所有复制类型都允许推送和拉取订阅。 合并复制使用两个附加条款来区分订阅:客户端订阅和服务器订阅。 客户端订阅和服务器订阅类型都可用于推送和请求订阅。 客户端订阅适用于大多数订阅者,而服务器订阅通常用于将数据重新发布给其他订阅者的订阅者。 订阅选择还会影响冲突解决。
非 SQL Server 订阅者
Oracle 和 IBM DB2 可以使用推送订阅订阅快照和事务性发布。 有关更多信息,请参阅 非 SQL Server 使用的订阅服务器。
创建订阅
若要创建订阅,请提供以下信息:
发布的名称。
订阅者的名称和订阅数据库。
分发代理或合并代理是在分发服务器还是订阅服务器上运行。
分发代理或合并代理是连续运行,或者按计划运行,或者仅按需执行。
快照代理是否应为订阅创建初始快照,以及分发代理还是合并代理应在订阅服务器上应用该快照。
作为分发代理或合并代理运行的帐户。
对于合并复制,订阅类型:服务器或客户端。
创建推送订阅
查看或修改推送订阅属性
删除推送订阅
SQL Server Management Studio: 删除推送订阅
注释
删除订阅不会从订阅方中删除已发布的对象。
创建请求订阅
SQL Server Management Studio: 创建请求订阅
查看或修改请求订阅属性
删除请求订阅