现在是这样的,我在局域网两台机器上各有一个oracle数据库,一个做主用,另一个备份(当主用机宕机时要顶上),现在主用机中有三个表要求每天同步到备用机上,我试图用exp,imp来导出导入,但发现在表模式下不能实现增量导出,请问有没有其他办法?
谢谢了

解决方案 »

  1.   

    建立dblink,然后建立触发器进行同步!
      

  2.   

    先建立一个DBLINK
    然后建立物化视图或者使用JOB自己写一存储过程来同步都是可以的
      

  3.   

    额,请教大家具体怎么做.比如说怎样建立dblink,怎样做物化视图等等.我扫了很多帖子,都是一句话带过,闹的我还是不知所以然.多谢诸位了.
      

  4.   


    物化视图能写本书。
    ORACLE文档里非常详尽的方案,网上也有常见的物化视图的创建与使用文章。拿来主义害人。
    纸上得来终觉浅,绝知此事要躬行!
      

  5.   

    呵呵,谢谢楼上,
    首先我用备份服务器做了dblink,但现在连不上主用服务器,请达人指导一下:
    首先,在备用机oracle服务器帐号下增加了tnsname.ora
    test =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.91)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = smsc)
        )
      )
    尝试一下sqlplus smname/scc@test,可以连上,并且能查出表来.
    select * from linklist;然后,我仍在备用机服务器上sqlplus /as sysdba
    创建连接:
    create public database link totest connect to smname identified by scc using 'smsc';然后,我查询select * from linklist@totest;
    就查不出来结果,返回错误:select * from device@totest
                         *
    ERROR at line 1:
    ORA-12154: TNS:could not resolve the connect identifier specified
    然后我查询了下
    SQL> select owner,object_name from dba_objects where object_type='DATABASE LINK';OWNER
    ------------------------------
    OBJECT_NAME
    --------------------------------------------------------------------------------
    PUBLIC
    TOTEST.REGRESS.RDBMS.DEV.US.ORACLE.COM请达人指教一下,
      

  6.   

    流复制吧。,如果需要资料,留个email给你发一下
      

  7.   

    [email protected]
    多谢楼上了
      

  8.   

    物化实图容易出问题,重写的时候会导致数据库特别慢。
    DBLINK简单明了。。建议用这玩意。DBLINK
      

  9.   

    谢谢楼上,我的dblink总是建立不上,上面我贴出了提示错误,但总找不到原因,楼上能否给予指点,多谢
      

  10.   

    同步数据到备库上,那么用streams是非常方便的。
    google下streams的用法,很简单的