有三个ORACLE数据库A,B,C
A是我自己的数据库,该数据库需要从B,C数据库取数据,由于B是一个实时的数据库不保留历史数据,因此我必须在A中每隔20秒左右就要访问一次B取数据,把数据搬过来放在 A中备用,同样,A访问C也是较频繁,大约1分钟一次。
请问,A->B和A->C的连接只能使用database link吗?效果会好吗?还有没有其他的方式连接?

解决方案 »

  1.   

    数据库间的互连也能够通过DBLINK来实现。
      

  2.   

    要么用dblink,也可以编程来实现
      

  3.   

    如果是这种情况,建议还是用DBLINK来编程比较方便
      

  4.   

    数据量多大?如果小的话DB LINK够用了,如果数据量大,又肯花钱的话可以考虑IBM的同步工具
      

  5.   

    database link加数据库快照应该可以解决此问题。
      

  6.   

    “必须在A中每隔20秒左右就要访问一次B取数据,把数据搬过来放在 A中备用”中“备用”说明不需要实时更新吧,这样的话楼主可在B中建多一个备份表存储历史数据,然后按一定的周期(比如两个小时,半天什么的,如果周期可以更大到一天一次的话,可以设定到每天凌晨最少人使用系统的时候取数据)由A到B的备份表中取数据。这样充分利用了资源,提高系统性能,对运行的程序也由好处。
      

  7.   

    可以考虑在A数据库中建一个视图,将B,c库中数据直接引入,这样就可以进行调用了。
    更新的时候可以考虑使用触发器,具体用哪一种就要看具体的应用了
      

  8.   

    看看ORACLE 的GRID 
    ORACLE 10G