首页 新闻 会员 周边 捐助

MSSQL同步数据

0
悬赏园豆:100 [已解决问题] 解决于 2014-04-08 09:11

先有一个主数据库A,和N个子数据库。每个子数据库中都有1-M张表和A数据库的相应表对应,现在需要将主数据库A的数据同步到各子数据库,最好能实时。现在想的两种方式是用触发器和发布订阅,用触发器的话 需要建立多个连接数据库,要同时连接多个数据库。发布订阅的话,只能是定时执行,而且不知道对性能会怎样。请问还有没有更好的实现方式?

sym_cn的主页 sym_cn | 小虾三级 | 园豆:798
提问于:2014-03-25 09:10
< >
分享
最佳答案
0

复制订阅也分很多情况的,楼主的这种情况应该单向的,所以使用复制订阅非常不错! 简易使用事务订阅方式,速度非常快!http://www.cnblogs.com/qingyuan/archive/2012/08/29/2661615.html

收获园豆:20
贺臣 | 菜鸟二级 |园豆:307 | 2014-03-27 14:35
其他回答(5)
0

同步足够了.局域网的话更不用担心

收获园豆:10
[秦时明月] | 园豆:738 (小虾三级) | 2014-03-25 09:26
0

处理的数据量不大或者只是单纯的同步数据那自带的发布订阅可以做,否则建议还是主表加时间戳的方式,每过一段时间处理上个时间戳的变化数据。实时肯定是理想中的说法或者换个思路只要数据在需要查看的地方出现的时间一致也可以看成是实时的。要提高处理效率的话可以引入队列服务,数据入库和同步的工作交给后台服务进程处理,前台定时查询处理状态即可。

收获园豆:20
蒋正 | 园豆:264 (菜鸟二级) | 2014-03-25 10:52
0

数据量不大的话还是发布订阅吧,自己写的性能不一定比的上他自带的

收获园豆:20
钱耀祖 | 园豆:44 (初学一级) | 2014-03-25 11:27
0

用发布的方式吧,发布订阅方式也可以选择实时的,并不是非得计划执行。

收获园豆:20
小胆粗心 | 园豆:300 (菜鸟二级) | 2014-03-25 16:42
0

可以用复制日志的方式

收获园豆:10
代码乱了 | 园豆:213 (菜鸟二级) | 2014-03-26 11:42
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册