订阅发布
订阅是对发布中的数据和数据库对象的副本的请求。订阅定义将接收哪个发布以及接收的时间和位置。在计划订阅时,请考虑代理处理发生的位置。所选择的订阅类型将控制代理运行的位置。对于推送订阅,合并代理或分发代理在分发服务器上运行;对于请求订阅,代理在订阅服务器上运行。创建订阅后,将无法更改其类型。
订阅 | 特征 | 使用时间 |
---|---|---|
推送订阅 |
对于推送订阅,发布服务器将更改传播到订阅服务器,而无需订阅服务器发出请求。更改可以按需、连续地或按照计划推送到订阅服务器。分发代理或合并代理在分发服务器上运行。 |
|
请求订阅 |
对于请求订阅,订阅服务器请求在发布服务器上所做的更改。请求订阅允许订阅服务器上的用户确定同步数据更改的时间。分发代理或合并代理在订阅服务器上运行。 |
|
合并复制订阅类型
所有复制类型都允许推送订阅和请求订阅。合并复制使用另外两个术语来区分订阅:客户端订阅和服务器订阅。客户端订阅和服务器订阅类型都可用于推送订阅和请求订阅。客户端订阅适合于大多数订阅服务器,而服务器订阅通常用于向其他订阅服务器重新发布数据的订阅服务器。订阅选择还会影响冲突解决。有关订阅类型的详细信息,请参阅合并复制如何检测和解决冲突中的“订阅类型”部分。创建订阅后,将无法更改其类型。
非 SQL Server 订阅服务器
Oracle 和 IBM DB2 可以使用推送订阅来订阅快照和事务性发布。有关详细信息,请参阅非 SQL Server 订阅服务器。
创建订阅
若要创建订阅,请提供下列信息:
- 发布的名称。
- 订阅服务器和订阅数据库的名称。
- 分发代理或合并代理是在分发服务器上运行还是在订阅服务器上运行。
- 分发代理或合并代理是连续运行、按照计划运行,还是仅按需运行。
- 快照代理是否应为订阅创建初始快照,以及分发代理或合并代理是否应在订阅服务器上应用该快照。
- 将运行分发代理或合并代理的帐户。
- 对于合并复制,还要提供订阅类型:服务器或客户端。
创建推送订阅
- SQL Server Management Studio:如何创建推送订阅 (SQL Server Management Studio)
- 复制 Transact-SQL 编程: 如何创建推送订阅(复制 Transact-SQL 编程)
- 复制管理对象 (RMO) 编程: 如何创建推送订阅(RMO 编程)
查看或修改推送订阅属性
- SQL Server Management Studio:如何查看和修改推送订阅属性 (SQL Server Management Studio)
- 复制 Transact-SQL 编程: How to: View and Modify Push Subscription Properties (Replication Transact-SQL Programming)
- RMO 编程: How to: View and Modify Push Subscription Properties (RMO Programming)
删除推送订阅
- SQL Server Management Studio:如何删除推送订阅 (SQL Server Management Studio)
- 复制 Transact-SQL 编程: How to: Delete a Push Subscription (Replication Transact-SQL Programming)
- RMO 编程: How to: Delete a Push Subscription (RMO Programming)
注意: |
---|
删除订阅不会从订阅服务器中删除已发布的对象。 |
创建请求订阅
- SQL Server Management Studio:如何创建请求订阅 (SQL Server Management Studio)
- 复制 Transact-SQL 编程: 如何创建请求订阅(复制 Transact-SQL 编程)
- RMO 编程: 如何创建请求订阅(RMO 编程)
查看或修改请求订阅属性
- SQL Server Management Studio:如何查看和修改请求订阅属性 (SQL Server Management Studio)
- 复制 Transact-SQL 编程: How to: View and Modify Pull Subscription Properties (Replication Transact-SQL Programming)
- RMO 编程: How to: View and Modify Pull Subscription Properties (RMO Programming)
删除请求订阅
- SQL Server Management Studio:如何删除请求订阅 (SQL Server Management Studio)
- 复制 Transact-SQL 编程: How to: Delete a Pull Subscription (Replication Transact-SQL Programming)
- RMO 编程: How to: Delete a Pull Subscription (RMO Programming)