日期:2014-05-17  浏览次数:20450 次

两个数据库互相同步问题
有个A 和B 两个数据库,用数据库复制和触发器是都能实现,A的数据库增、删、改都能同步到B数据库里,但是B的数据库增、删、改怎么同步到A数据库里呢。如里用触发器,就变成死循环,用复制,会提示说。其中一个数据库已发布,并不让删除。网上有很多数据库同步的例子。但都不是双向的。在这里有没有高手帮帮我。

------解决方案--------------------
你说的双向同步其实是复制
合并复制或者可更新的事务复制都可以
如果源和目标数据库都在一个局域网里那就简单了,如果在广域网或者不同的局域网里那就有点麻烦了
------解决方案--------------------
这样就可以做到双向了但是又不会无限死循环
 
------解决方案--------------------
引用:
嗯。当时接手时就是这样。都在一个数据库下。数据量大时。就得想办法给分开了。现在正努力给解决。希望你能多多帮忙


如果是性能的问题那很好解决,请使用分区表。 因为性能的问题使用双向同步这可不是好习惯。


------解决方案--------------------
引用:
引用:
这个前面刚有人问过类似的问题。。楼主可以使用
@@NESTLEVEL这个参数来控制当前嵌套的层数。

比如你A 和B数据库里分别对表AB 建立触发器

SQL code

create trigger [dbo].[tr_table1] on [dbo].[AB]
for  insert
as
begin
if @@NESTLEVEL……


你是说同时在2个数据库对这个表中的同一条记录做修改么