一、环境要求及说明

1、快照复制和事务复制是单向的(2005及以后的版本中加入了订阅端可更新的事务复制)。

2、合并复制是双向的。

3、快照复制对表结构没有要求。

4、事务复制要求表有主键。

5、合并复制要求表有 rowguid 列。

-------------------------------------------------------

快照复制 
1、概念

快照复制是完全按照数据和数据库对象出现时的状态来复制和分发它们的过程。

快照复制不需要连续地监控数据变化,因为已发布数据的变化不被增量地传播到订阅服务器,而是周期性的被一次复制。
2、 适用情况

  • 数据主要是静态的,比如将数据仓库复制到数据集市中

  • 一段时间内允许有已过时的数据拷贝的情况

  • 小批量数据

  • 站点经常脱离连接,并且可接受高延迟

事务复制
1、概念

  使用事务复制,初始快照数据将被传播到订阅服务器,因此该订阅服务器就具有了一个所谓的初始负载,这是可以开始工作的内容。

当出版服务器上发生数据修改时,这些单独的事务会被及时捕获并复制到订阅服务器。并保留事务边界,当所有的改变都被传播后,所有订阅服务器将具有与传播服务器相同的值。
2、适用情况

  • 需要数据修改经常在其发生的几秒钟内被传播到订阅服务器

  • 需要事务是原子性的

  • 订阅服务器在通常是连接到出版服务器上的

  • 应用程序不能忍受订阅服务器接收改变的高延迟

合并复制 
1、概念

  合并复制允许一组站点自治工作,在线或离线。然后在将来的某个时刻,数据按照在多个已复制站点上发生的修改或插入情况被合并成一个统一的结果。

在订阅服务器上应用初始快照,作为其初始负载,然后SQL   Server跟踪在出版服务器上和订阅服务器上已发布数据的更改。

数据按照预先定义或调度的时间,或者按需在服务器间同步。然后更新被独立应用在多个服务器上。

这意味着相同的数据可能由出版服务器或多个订阅服务器进行了更新,因而当数据更新合并时将发生冲突。
2、适用情况

• 多个订阅服务器需要在不同时刻更新数据,并将这些数据传播到出版服务器和其他订阅服务器。

• 订阅服务器需要接收数据,脱机更改数据,然后将更改同步到出版服务器和其他订阅服务器

• 应用程序的延迟需求可高可低

• 站点的自治性很关键

--------------------------------------------------------

事务复制

  • 将复制启用后的所有发布服务器上发布的内容在修改时传给订阅服务器;

  • 数据更改将按照其在发布服务器上发生的顺序和事务边界,应用于订阅服务器;

  • 在发布内部可以保证事务的一致性;

快照复制

  • 将数据以特定时刻的瞬时状态分发,而不监视对数据的更新;

  • 发生同步时,将生成完整的快照,并将其发送到订阅服务器;

合并复制

  • 通常从发布数据库对象和数据的快照开始,并且用触发器跟踪在发布器和订阅服务器上所做的后续更改和架构修改;

  • 订阅服务器在连接到网络时将与发布服务器进行同步,并交换自上次同步以来发布服务器和订阅服务器之间发生更改的所有行;

SQL SERVER 之快照复制,事务复制,合并复制的更多相关文章

  1. SQL Server数据库快照的工作方式

    SQL Server数据库快照的工作方式 翻译自:How Database Snapshots Work 最近有一个帖子<errorlog中的异常信息rolled forward 和rolled ...

  2. SQL Server 2014新特性——事务持久性控制

    控制事务持久性 SQL Server 2014之后事务分为2种:完全持久, 默认或延迟的持久. 完全持久,当事务被提交之后,会把事务日志写入到磁盘,完成后返回给客户端. 延迟持久,事务提交是异步的,在 ...

  3. SQL Server 存储过程,带事务的存储过程(创建存储过程,删除存储过程,修改存储过

    存储过程 创建存储过程 use pubs --pubs为数据库 go create procedure MyPRO --procedure为创建存储过程关键字,也可以简写proc,MyPRO为存储过程 ...

  4. SQL Server中的高可用性(3)----复制

        在本系列文章的前两篇对高可用性的意义和单实例下的高可用性做了阐述.但是当随着数据量的增长,以及对RTO和RPO要求的严格,单实例已经无法满足HA/DR方面的要求,因此需要做多实例的高可用性.本 ...

  5. SQL Server中的高可用性(3)----复制 (转载)

    在本系列文章的前两篇对高可用性的意义和单实例下的高可用性做了阐述.但是当随着数据量的增长,以及对RTO和RPO要求的严格,单实例已经无法满足HA/DR方面的要求,因此需要做多实例的高可用性.本文着重对 ...

  6. SQL Server 跨网段(跨机房)复制

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 解决方案(Solution) 搭建过程(Process) 注意事项(Attention) 参考 ...

  7. Step4:SQL Server 跨网段(跨机房)复制

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 解决方案(Solution) 搭建过程(Process) 注意事项(Attention) 参考 ...

  8. SQL Server 跨服务器、跨版本使用复制 (2008、2012)

    在两台不同的服务器间实现SQL Server 的发布和订阅,需要一些设置. 测试环境:2008数据库.2012数据库,可实现跨版本发布订阅 本次测试是08的数据库做发布端 ,使用08数据及12数据库均 ...

  9. Sql Server 2005 mdf、ldf文件无法复制问题

    [问题原因]Sql Server服务只要启动就一直占用,故无法进行编辑操作. [解决办法 - 1]: 1)在开始-运行对话框中输入"services.msc”,显示如下界面: 2)关闭如上选 ...

随机推荐

  1. 推断(inference)、贝叶斯规则(Bayes's rule)与导出分布(derived distribution)

    1. 建模 对原始信号 X 进行观测,观测可以抽象为(离散:PY|X(y|x), 连续:fY|X(y|x)),物理世界噪声的存在,将导致观测到的 X 出现一定的噪声,记为 Y: X⇒fY|X(y|x) ...

  2. C# WPF MVVM QQ密码管家项目(8,完结篇:自动输入QQ号、密码)

    原文:C# WPF MVVM QQ密码管家项目(8,完结篇:自动输入QQ号.密码) 目录: 1,界面设计 2,数据模型的建立与数据绑定 3,添加QQ数据 4,修改QQ数据 5,删除QQ数据 6,密码选 ...

  3. MongoDB 可视化管理工具

    MongoDB 可视化管理工具 (2011年10月-至今)   正文 该项目从2011年10月开始开发,知道现在已经有整整5年了.MongoDB也从一开始的大红大紫到现在趋于平淡.MongoCola这 ...

  4. 在Microsoft Expression Blend 2 中绘制圆角矩形按钮

    原文:在Microsoft Expression Blend 2 中绘制圆角矩形按钮 /* 声明:转载请保留此信息:http://www.BrawDraw.com, http://www.ZPXP.c ...

  5. 《Planet Earth II》观看笔记

    carrion:n. 腐肉:臭尸:不洁之物 cub:n. 幼兽:不懂规矩的年轻人:chick; n. 小鸡:小鸟:少妇 herd:兽群: 1. 高频单词 terrain:n. [地理] 地形,地势:领 ...

  6. 生意经:凡是现今比较会赚钱或是规模比较大的软件公司大都属于开发"消费型软件"的公司(而且登广告,应该定低价进行销售)

    c#之父是Anders Hejlsberg, 一个丹麦天才.他和idsoft的John Carmack都是自学成才的典范. 他对语言和汇编的理解全世界没几个人能超越. (今天偶然从网上了解到这个大牛, ...

  7. SecureCRT下载/注册/安装镜像文件

    #$language = "VBScript" #$interface = "1.0" ' This automatically generated scrip ...

  8. google 搜索结果在新标签中打开

    google->setting->search setting->Where results open->检查

  9. window下nodejs爬取gb2312网页出现乱码的解决方案

     发布于 2012-8-22 18:15  5230 次浏览  最后一次编辑是 2013-2-18 22:31 linux环境下,我们可以通过 iconv 这个C++模块来处理Node.JS不支持的字 ...

  10. POST请求——HttpWebRequest

    string url=""; string param=""; string result = string.Empty; HttpWebRequest req ...