我的源数据库服务器(oracle)和目标数据库服务器(oracle)不能互通,但可以通过别的网段的服务器做中转。比如源数据库服务器网段在10,中转服务器在20,目标数据库服务器在30,请问我怎么才能同步源数据库服务器和目标数据库服务器?请高手不吝赐教。

解决方案 »

  1.   

    全库同步还是同步某些表?对同步的失效性有什么要求没?时时的还是可以有间隔的? 如果是全库的话就比较折腾了,某些表的话可以考虑用触发器,以前有人发过类似的帖子. 楼主可以搜一下。还有就是通过什么策略限制2个数据库之前的访问的,最简单的就是开通互通的权限,做个Data Guard,其他方案都是折腾。
     
      

  2.   


    A 库建触发器,将数据同步到中专B,在B上建触发器,在将数据转到C。 
      

  3.   

    B上没有oracle,即A能连通B,B能连通C,A和C是Oracle服务器
      

  4.   


    这个就悲剧了..不过定时的exp 这个好像可以。 将B 映射到A和C上。 在A上导出数据到B的映射,每过一段时间,在C从B的映射将数据导入数据库。 ------------------------------------------------------------------------------ 
    Blog: http://blog.csdn.net/tianlesoftware 
    网上资源: http://tianlesoftware.download.csdn.net 
    相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx 
    DBA1 群:62697716(满); DBA2 群:62697977
      

  5.   

    能不能做一个自动完成这些功能的程序呢?
    1。实时收集A上的变化,形成一个文件;
    2。定时把A上的这个文件传输到B上;
    3。定时把这个文件从B传输到C上;
    4。C解析这个文件,更新Oracle DB
    但具体怎么实现,还需要高人指点
      

  6.   


    Oracle 还没有这样的程序,目前可行的就是用exp 来导出和导入,这个和楼主要求的差不多。 可以把这些脚本添加到计划任务里,让系统自动执行也可以啊. 还有一种解决方法,就是在前台上同时写2个库,这样就不用这么麻烦了。 
      

  7.   

    每天传输的数据记录数不是很多,大概在几百条记录,但表中有一个字段是long型,long型最多可以存2G的数据,所以数据应该还是比较大的
      

  8.   

    用到了触发器,用JAVA开发,最后的效果是只要两个数据库是相同的表(表结构完全相同),就可以实时(可以设定时间间隔)的将源表的数据变化同步到目的表中
      

  9.   

    super_ssy说的我明白,但现在是有3台机器A,B,C。B能连通A和C,A,C都是Oracle Server,B并不是。AC两台Oracle Server上的表结构完全一致。怎么实时同步,或延时同步也可。
      

  10.   

    那就对了,我的软件放在B上运行就OK了