SQLSERVER2005数据库复制解读.doc

  1. 1、本文档共59页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SQLSERVER2005数据库复制解读

SQL SERVER 2005 数据库复制 复制发布模型概述 复制使用出版业术语表示复制拓扑中的组件,其中有发布服务器、分发服务器、订阅服务器、发布、项目和订阅。 发布服务器 发布服务器是一种数据库实例,它通过复制向其他位置提供数据。发布服务器可以有一个或多个发布,每个发布定义一组要复制的具有逻辑关系的对象和数据。 ?分发服务器 分发服务器也是一种数据库实例,它起着存储区的作用,用于复制与一个或多个发布服务器相关联的特定数据。每个发布服务器都与分发服务器中的单个数据库(称作分发数据库)相关联。分发数据库存储复制状态数据和有关发布的元数据,并且在某些情况下为从发布服务器向订阅服务器移动的数据起着排队的作用。在很多情况下,一个数据库服务器实例充当发布服务器和分发服务器两个角色。这称为“本地分发服务器”。当发布服务器和分发服务器按各自的数据库服务器实例配置时,把分发服务器称为“远程分发服务器”。 ?订阅服务器 订阅服务器是接收复制数据的数据库实例。订阅服务器可以接收来自多个发布服务器和发布的数据。根据所选的复制类型,订阅服务器还可以将数据更改传递回发布服务器或者将数据重新发布到其他订阅服务器。 ?项目 项目用于标识发布中包含的数据库对象。一次发布可以包含不同类型的项目,包括表、视图、存储过程和其他对象。当把表作为项目发布时,可以用筛选器限制发送到订阅服务器的数据的列和行。 ?发布 发布是一个数据库中的一个或多个项目的集合。将多个项目分组成一个发布,使得更便于指定一组作为一个单元复制的、具有逻辑关系的数据库对象和数据。 ?订阅 订阅是把发布副本传递到订阅服务器的请求。订阅定义将接收的发布和接收的时间、地点。有两种类型的订阅:推送订阅和请求订阅。 选择复制类型 Microsoft SQL Server 2005 提供了下列可在分布式应用程序中使用的复制类型:事务性复制,合并复制,快照复制 。 事务性复制通常用于服务器到服务器环境中,在以下各种情况下适合采用事务性复制。 希望发生增量更改时将其传播到订阅服务器。 从发布服务器上发生更???,至更改到达订阅服务器,应用程序需要这两者之间的滞后时间较短。 应用程序需要访问中间数据状态。例如某一行更改了5次,事务复制将允许应用程序响应每次更改(例如,激发触发器),而不只是响应该行最终的数据更改。 发布服务器有大量的插入、更改、删除活动。 当必须在数据被修改时对其进行复制,以及发布服务器和订阅服务器通过网络可靠或经常地连接在一起时,使用事务复制。 默认情况下,事务发布的订阅服务器应视为只读,所以更改将不会传播回发布服务器。 在一般情况下,如果发布服务器和订阅服务器都对数据进行了更改,那么以发布服务器的事务为准,覆盖订阅服务器对数据更改。 上海120的拓扑结构是:上海120指挥调度部分被认定为G3级系统,办公部分被认定为G2级系统。要求G3系统数据库服务器要实时把数据库数据变化更新到G2系统数据库,并且G3系统可向G2系统直接写入数据,G2系统可以访问G3系统,但不能向G3系统写入数据。 根据上海120的情况,使用“事务性复制”是最合理的。 事务复制的工作机制 事务性复制由 SQL Server 快照代理、日志读取器代理和分发代理实现。快照代理准备快照文件(其中包含了已发布表和数据库对象的架构和数据),然后将这些文件存储在快照文件夹中,并在分发服务器中的分发数据库中记录同步作业。 日志读取器代理监视为事务性复制配置的每个数据库的事务日志,并将标记为要复制的事务从事务日志复制到分发数据库中,分发数据库的作用相当于一个可靠的存储-转发队列。分发代理将快照文件夹中的初始快照文件和分发数据库表中的事务复制到订阅服务器中。 在发布服务器中所做的增量更改根据分发代理的计划流向订阅服务器,分发代理可以连续运行以尽量减少滞后时间,也可以按预定的时间间隔运行。由于数据更改必须在发布服务器中进行(使用事务性复制时,无需指定立即更新或排队更新选项),从而避免了更新冲突。最后,所有订阅服务器都将获得与发布服务器相同的值。如果事务性复制使用了立即更新或排队更新选项,更新可以在订阅服务器中进行,对于排队更新,可能会发生冲突。 创建复制前需要做的工作 在SQL Server 2005里设置和使用数据库复制之前,应先检查相关的几台SQL Server服务器下面几点是否满足: 发布服务器是调度连接的数据库服务器(需要先做数据库还原建立数据库) 分发服务器起着存储区的作用,用于复制与一个或多个发布服务器相关联的特定数据 订阅服务器是备份数据库服务器(和发布服务器一样需要先做数据库还原建立数据库,数据库要和发布服务器的数据库一样。) MSSQLserver和Sqlserveragent服务是否是以域用户身份启动并运行的(

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档