PDA

查看完整版本 : 【转帖】MSSQL多台服务器数据同步教程


Tony
2005-07-03, 11:42 PM
首先,同步原理就是通过MSSQL自带的复制原理,但是它的功能真的是很强大

它有三种复制功能,我简单的说明一下:

1.快照发布。简单的说就是规定某一时刻来跟主数据库服务器同步一下,速度快,但是不能做到实时同步。
2.事务发布.可以做到实时同步数据,但是只能访问主数据库服务器,而其他同步数据库服务器来跟主数据库服务器来同步,怎么说呢,就是主数据库服务器的数据一修改,副数据库服务器就更新,如果主服务器坏掉了话,那么副数据库服务器就不能提供服务,简单的说 就是备份数据库,不能提供访问数据库
3.合并发布.我觉得更能算是最强的,假设两台数据库服务器,不管你访问哪台数据库服务器,也就是说只要数据库里的表有改动的话,那么这两台就立即同步,当然了,这需要大量的带宽,所以我这次方案,两服务器是1000MB相连,数据基本上是一致.

所以我也采用了合并分布来解决MSSQL数据库同步问题.

我们先来建设要同步A数据库服务器中的BBSXP-A的数据库,B数据库服务器中的BBSXP-B的数据库

打开数据库企业管理器,把数据库服务器A和B都注册到管理器中
打开A的数据库,选择复制,打开子列,在选择发布内容,右击新建发步,跳出创建发布向导对话框
如图1:

然后接着下一步,选择所要同步的数据库,选择完数据库之后,就要选择所要复制的类型,这个可以根据上面所解释的复制类型,根据自己的需要来定,这里我选择合并事务.接着选择所订阅服务器的类型,这里选择默认SQL2000,接着就是选择要同步该数据库中的 表.我一般都是全选,当然如果只是某个表,只要选择某一个表即可.这里说明一下,由于事务发布的原理,对数据库的读取以及处理,所以如果选择事务发布的话,可能会导致有些表不能做为同步对象.接着选择"将表中添加唯一标识列符"
然后继续下一步,最后跟着提示直到下一步

发布服务器就这样做完了,接着就是做同步数据库服务器的订阅服务器.

订阅服务器其他也很简单,在订阅的选项中,选择新建服务器,然后根据提示照着做即可.

当两服务器全都做完之后,接着下来是一个比较关键的步骤

在订阅和发布服务器做完只后,到复制监测器--发布服务器--选择所发布的服务器

在同步之前,不管是什么发布类型,都要在图2中,快照一次,才能开始同步

写了这么多,也不知道有没有写错,大家如果有问题,就一起讨论.也可以看MSSQL的帮助,里面写得更详细,而且还有各个发布类型的工作原理,这里我就不多说了~

这个实验我已经有做过了,现在已经投入到项目当中运用了,希望大家能够继续讨论相关问题~