SQL Server(2008)中通过触发器进行数据同步的设置说明

根据公司领导要求,为了减轻数据库服务器上的压力。特将其中一部分数据分离出来,放到另外一台数据库服务器上。因此需要对基础数据进行一个同步操作。

要进行数据同步,可以通过代码、触发器、日志复制等。因为此处涉及到的数据量不大,且不方便修改程序代码。所有采取的是Sql Server中触发器的一个同步。

下面就对触发器进行数据同步的一些配置做下说明:


环境:Sql Server 2008

         Windows Server 2008


1.确定两台数据库服务器上要进行同步的数据库及表结构

2.在作为数据源的数据库服务器上对应的表上创建触发器:(204.17是数据源服务器,201.17是要同步的服务器)



例子中的触发器的作用是将102.1.204.17服务器上test数据库中user表中的数据同步到201.17上的表中去(触发条件是任何添加、修改、删除操作)。

3.启动两台服务器上的Distributed Transaction Coordinator服务(开始--运行--services.msc  回车,找到前面的这个服务--启动)

4.MSDTCMSDTC设置

windows server 2003设置:


windows server 2008设置:


5.检查防火墙。可以关闭防火墙或把MSDTC加入例外。

6.检查两台服务器通信是否正常:

a) telnet DbIP 135是否可以通;
b) 然后相互Ping IP;
c) 再ping 相互的NetBios名称(输入ping -a ip就可以看到对应的NetBios名称),还不通的话
d) 可以修改%windir%/system32/etc/hosts,或%windir%/system32/etc/lmhost.sam去掉文件扩展名,进行DB服务和IP的绑定即可,如下图所示:

 


到这里通过触发器进行数据库分布式开发的环境就准备好了。



郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。