SQL Server中的Replication,将数据和数据库对象从一个数据库复制和分发到另一个数据库,然后在数据库间进行同步,以维持一致性。Replication注重的是数据同步,it doesn’t distribute entire database, but only distributes some part of database like tables or views。
1,Publisher 发布服务器
Publisher是数据源,提供Replication的数据库对象
2,Subscriber 订阅服务器
Subscriber是接收Replication的数据库实例,Subscriber可以接收来自多个Publisher的数据。
3,Article 项目
Article是数据库中的对象,可以是表,view,stored procedure,function等数据库对象,一个或多个Aritcle集合形成一个Publication。
不能单独传递一个Article,必须将Article包含在Publication中才能用于replication。
4,Publication 发布
Publication是用于复制的基本单位,Publisher和Subscriber之间传递数据的基本单位是Publication,而不是表,view,stored procedure等数据库对象。
Publication是一个或多个Article的集合,一个Publication可以包含不同类型的Article。
5,Subscription 订阅
Subscription是将Publication从Publisher发送到Subscriber上,根据发送的方式,subscription有两种类型:push subscription 和pull subscription
push subscription的特点:
With this subscription, the publisher is responsible for updating all the changes to the subscriber without the subscriber asking those changes, Push subscriptions are created at the Publisher server.
pull subscription的特点:
With this subscription the subscriber initiates the replication instead of the publisher, The subscriptions are created at the Subscriber server.
6,Distributer 分发服务器
Distributer是一个数据库实例,服务于一个或多个Publisher。每个Publisher都对应distributer中的一个database,这种关联的数据库叫做分发数据库。分发数据库上保存着replication的状态信息以及每个publication的metadata。
7,Replication agent