Chinaunix

标题: oracle复制中dba_repgroup中的status从NORMAL变到QUIESCED才开始复制??? [打印本页]

作者: zhaotjh    时间: 2007-05-07 21:44
标题: oracle复制中dba_repgroup中的status从NORMAL变到QUIESCED才开始复制???
问题如上,
select * from dba_repcatlog
结果是空;

select sname,oname,status,gname from dba_repobject where gname='SCOTT_REPG';
结果:
sname          oname           status             gname
SCOTT        DEPT        VALID        SCOTT_REPG
SCOTT        DEPT$RP        VALID        SCOTT_REPG
SCOTT        DEPT$RP        VALID        SCOTT_REPG
SCOTT        EMP        VALID        SCOTT_REPG
SCOTT        EMP$RP        VALID        SCOTT_REPG
SCOTT        EMP$RP        VALID        SCOTT_REPG

select gname, dblink, masterdef MASTERDEF, master MASTER from sys.dba_repsites where gname='SCOTT_REPG';
结果:
gname                                dblink                               masterdef     master
SCOTT_REPG        ORC33.WORLD        N        Y
SCOTT_REPG        ORC22.WORLD        Y        Y

select gname,master,status from dba_repgroup where gname='SCOTT_REPG';
结果:
gname                               master            status
SCOTT_REPG        Y        NORMAL

当dba_repgroup 中的status 为NORMAL时,我执行
SQL> BEGIN
  2  DBMS_REPCAT.RESUME_MASTER_ACTIVITY (
  3        gname => 'scott_repg');
  4  END;
  5  /

PL/SQL procedure successfully completed

此时我在ORC22.WORLD(主数据库)中参与复制的表EMP中插入或者删除一条数据,等待的时间超过了我设置的复制间隔时间10分钟,ORC33.WORLD(从数据库)中的EMP表没有变化。但是当我在ORC22.WORLD(主数据库)中执行
SQL>
SQL> begin
  2  Dbms_Repcat. SUSPEND_MASTER_ACTIVITY (
  3        gname => 'scott_repg');
  4  end;
  5  /
PL/SQL procedure successfully completed
过程挂起复制的之后,在查看从数据库中的EMP表就发生了预期的变化。不管时在主复制点所作的是删除或者插入都反映到了从数据库中。发生变化后仔细观察几个和复制相关的视图发现dba_repgroup 中的status这时候从normal变化到QUIESCED。就是这个时候实行了复制的功能。

请问这是什么原因引起的???

谢谢




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2