企业做大了,就会有分支机构。分公司与总公司之间既统一又独立。这就是业务,技术服务于业务,那么摆在我们面前的问题是如何让数据既统一又独立?其实SQLServer已经为我们提供了很好的解决方案:发布、订阅。
打开SQL Server2012的对象资源管理器我们可以看到里面有一个”复制“节点。(图1)
<img alt="" data-cke-saved-src="https://img-blog.csdn.net/20130913163707703?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdGlhbmRpXzUwMDA=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" src="https://img-blog.csdn.net/20130913163707703?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdGlhbmRpXzUwMDA=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" />
先来简单了解下复制的概念:
复制是将数据或数据库对象从一个数据库复制和分发到另外一个数据库,并进行数据同步,从而使源数据库和目标数据库保持一致。使用复制,可以在局域网和广域网、拨号连接、无线连接和Internet上将数据分发到不同位置以及分发给远程或移动用户。
复制由发布服务器、分发服务器、订阅服服务器组成:
发布服务器:数据的来源服务器,维护源数据,决定哪些数据将被分发,检测哪些数据发生了修改,并将这些信息提交给分发服务器。
分发服务器:分发服务器负责把从发布服务器拿来的数据传送至订阅服务器。
订阅服务器:订阅服务器就是发布服务器数据的副本,接收维护数据。
点开复制节点我们看到其下面的两个自节点:“本地发布”、“本地订阅”(图2)
举个经典的例子解释下发布、订阅:
发布服务器类似于报社,报社提供报刊的内容并印刷,是数据源;分发服务器相当于邮局,他将各报社的报刊送(分发)到订户手中;订阅服务器相当于订户,从邮局那里收到报刊。
发布服务器通过复制向其他位置提供数据,分发服务器起着存储区的作用,用于复制与一个或多个发布服务器相关联的特定数据。每个发布服务器都与分发服务器上的单个数据库(称作分发数据库)相关联。分发数据库存储复制状态数据和有关发布的元数据,并且在某些情况下为从发布服务器向订阅服务器移动的数据起着排队的作用。在