关于ORACLE高级复制, 马上有个系统要使用高级复制来完成, 准备使用只读物化视图复制(MV)来完成, 但是由于表结构的设计上没有主键,所以准备使用基于ROWID的视图, 数据库服务器的版本是ORACLE9I, 不知这样会不会有风险. 希望大家能给一点建议. 

解决方案 »

  1.   

    是表级的还是用户级的?1.如果是用户级的,使用exp/imp方式;
    2.如果是同用户表级的:
    create table tableB as (select * from tableA  where 1=1);
    3.如果是不同服务器间表级的,使用db_link:
    create table tableB as (select * from tableA@db_link where 1=1);
      

  2.   

    反正也是只读的,基于rowid也没什么问题,要说风险也只是数据实时性要求有多高的问题,网络断开的时间内数据不能同步。
      

  3.   

    如果是整个库的同步 可以考虑使用 DATA  GUARD数据保护
      

  4.   

    你这张表会不会经常有ddl?如果采用rowid方式的话,这一点是需要注意的.比如move等操作都是需要去避免的.另外.注意hwm的变化.这样时间长了刷新会比较慢.
    我认为MV是一个比较好的解决问题的办法.dg如果用于容灾还是可以的,但缺点是standby site无法实时进行select.  但11g中是有这个功能的.