各位大侠帮个忙,谢谢了先。我的问题如下
我有两个oracle 服务器,一个是A,一个是B
A中有数据库databaseA,B中有数据库databaseB。
数据库databaseA中有表test。我想在databaseB中也建个表或视图test。就是databaseB中的表test是databaseA中表test的副本。只是databaseB中的表test是只能select。但databaseA中的表test插入或删除或修改一条数据,databaseB中的表test中的数据也跟着修改。请问我应该怎么做呢。两个服务器的IP地址不一样。谢谢大家了。

解决方案 »

  1.   

    建议哈,B做个DBLINK到A,然后A上做个别名到TEST@A上,B上用户权限控制不允许修改数据。
      

  2.   


     
     
    1創建連接 DBLINK 
        CREATE PUBLIC DATABASE LINK "CF.US.ORACLE.COM"  ---CF是別名 
       CONNECT TO PSITECHUSER                           ---- psitechuser 是用戶名 
        IDENTIFIED BY "<pwd>"                           ----<pwd>  是密碼, 
        USING 'CFDBSRV';                          ----CFDBSRV 是要連的Oracle數據庫服務器 
    2  在本地库上将global_names设为TRUE: 
        alter system set global_names=true; 
    3 在本機庫上利用DBLINK 查詢  CFDBSRV 庫上的表 
      Select *  From  duan@CF  
      

  3.   

    请问这里的 Select *  From  duan@CF  的“duan”是什么意思啊,谢谢你了
      

  4.   

    可以不可以只link一个表而不link整个数据库呢。
      

  5.   

    不可以,你可以通过权限控制来对用户访问整个数据库还是个别表进行访问。zxf_feng提议的物化视图也挺好的,如果更新不是很频繁,建议使用触发式物化视图。当远程数据库连接异常时,可以保证B机应用正常。