利用MSSQL复制技术 实现数据同步
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
三分钟学会Sql Server的复制功能
有两个服务器,装了两个数据库,一个是主的,一个是备用的,下面的的功能就将主数据库的数据库,实时同步到备用数据库上,使他们的数据内容,基本上保持一致。
根据网络情况,可能达到10秒左右的延时,即主数据库添加,删除,更新的内容,一般在10秒内就可以同步到备用数据库上。
三分钟的视频操作演示在最下面,不要忘记看了。
1、配置分布发服务器
2、新建发布
3、这里介绍事务发布
4、选择要发布的表,注意:只有带主键的表才可以发布
5、这是个问题,因为很多表中,我们会有这个自动编号的功能,不过你可以自己修改存储过程来实现这个功能。
加上用到SET IDENTITY_INSERT xxxtable ON的功能
6、发布建好后,我们有强制新订阅来发布,如果要同步到多台机器,只要操作多次,选择不同的订阅服务器就可以了。
7、选择订阅的服务器,可以一次选多台
8、选择订阅服务器上的数据库名称
9、根据要求,选择是否初始化,初始化的过程,就是将在订阅服务器上创建传输用的存储过程,新建表,同步初始的数据。
10、通过初始化建的表,像自动编号这样的结构是没有用,需要自己来修改。
11、这里有同步需要的存储过程,根据自己的业务需要,可以改一下,比如支持自动编号的功能
我个人一般使用下面操作:
1、把复制用的存储过程放在主数据库上,同时根据业务需要,适当的改一下存储过程的内容
2、禁止对主数据写操作,备份主数据库
3、在备用的服务器上还原数据库
4、使用复制功能
5、开启对主数据库写
这样,主数据和备用数据的表结构就完全一致。
看了上面的图片,花了不知道有没有三分钟,当然只看的话,十分钟可能也不会明白,操作一下才可以。
利用MSSQL复制技术实现数据同步
复制的概念
Microsoft? SQL Server? 2000 的复制是在数据库之间对数据和数据库对象进行复制
和分发并进行同步以确保其一致性的一组技术。
使用复制可以将数据分发到不同位置,通过局域网、使用拨号连接、通过Internet 分
发给远程或移动用户。复制还能够使用户提高应用程序性能,根据数据的使用方式物理
分隔数据(例如,将联机事务处理(OLTP) 和决策支持系统分开),或者跨越多个服务
器分布数据库处理。
---------------------------------------------------------------------------
SQL复制的基本元素包括
发布服务器、订阅服务器、分发服务器、发布、项目
发布服务器
发布服务器是提供数据以便复制到其它服务器的服务器。发布服务器可以具有一个或多个发布,每个发布代表一组逻辑相关的数据。除了指定其中哪些数据需要复制之外,发布服务器还检测事务复制期间发生更改的数据并维护有关此站点上所有发布的信息。
分发服务器
分发服务器是作为分发数据库宿主并存储历史数据和/或事务以及元数据的服务器。分发
服务器的角色根据执行的复制类型而不同。有关更多信息,请参见复制类型。
远程分发服务器是独立于发布服务器并配置为复制的分发服务器的服务器。本地分发服务器是既配置为复制的发布服务器又配置为复制的分发服务器的服务器。
订阅服务器
订阅服务器是接收复制数据的服务器。订阅服务器订阅的是发布而不是发布中分离的项目;并且订阅服务器只订阅其需要的发布,而不是发布服务器上所有可用的发布。根据复制的类型和所选择的复制选项,订阅服务器还可以将数据更改传播回发布服务器或将数据重新发布到其它订阅服务器。
发布
发布是一个数据库中的一个或多个项目的集合。这种多个项目的分组使得指定逻辑相关的一组数据和数据库对象以一起复制变得更容易。
项目
项目是指定要复制的数据表、数据分区或数据库对象。项目可以是完整的表、某几列(使用垂
直筛选)、某几行(使用水平筛选)、存储过程或视图定义、存储过程的执行、视图、索引视图
或用户定义函数。
订阅
订阅是对数据或数据库对象的复本的请求。订阅定义将接收的发布和接收的时间、地点。订阅的
同步或数据分发可以由发布服务器(强制订阅)或订阅服务器(请求订阅)请求。发布可以支持
强制订阅和请求订阅的混合。
---------------------------------------------------------------------------
SQL复制的工作原理
SQL SERVER 主要采用出版物、订阅的方式来处理复制。源数据所在的服务器是出版服务器,负责发表数据。出版服务器把要发表的数据的所有改变情况的拷贝复制到分发服务器分发服务器包含有一个分发数据库,可接收数据的所有改变,并保存这些改变,再把这些改变分发给订阅服务器
---------------------------------------------------------------------------
SQL SERVER复制技术类型,三种复制技术,分别是(详细的说明参考SQL联机帮助):
1、快照复制
2、事务复制
3、合并复制
====================================================================== ======
下介绍实现复制的步骤。(以快照复制为例)
准备工作:
1.发布服务器,订阅服务器都创建一个同名的windows用户,并设置相同的密码,做为发布快照文件夹的有效访问用户
--我的电脑
--控制面板
--管理工具
--计算机管理
--用户和组
--右键用户
--新建用户
--建立一个隶属于administrator组的登陆windows的用户
2.在发布服务器上,新建一个共享目录,做为发布的快照文件的存放目录,操作:
我的电脑--D:\ 新建一个目录,名为: PUB
--右键这个新建的目录
--属性--共享
--选择"共享该文件夹"
--通过"权限"按纽来设置具体的用户权限,保证第一步中创建的用户具有对该文件夹的所有权限
--确定