更改数据库元数据

更改源数据库的以下元数据时,需要执行此过程以防止复制错误:

如果在不执行此过程的情况下进行了这些更改,则会出现以下错误:

2013-05-26 20:10:09  ERROR   OGG-05500  Detected database metadata mismatch between current trail file ./dirdat/_p/v1000000003 and the previous sequence. *DBTIMEZONE: [GMT]/[UTC].

此过程将停止提取,然后创建新的线索文件。新数据库元数据包含在此新文件中,其中包含更改后启动的事务处理。

  1. 停止源数据库上的事务处理活动。尚未对数据库进行元数据更改。

  2. 在源系统上,发出带有 LOGEND 选项的 SEND EXTRACT 命令,直到显示不再有要捕获的重做数据。

    SEND EXTRACT *group* LOGEND
  3. 停止提取。

    STOP EXTRACT *group*
  4. 在每个目标系统上,发出带有 STATUS 选项的 SEND REPLICAT 命令,直到显示状态 "At EOF" 以指示它已完成对线索中的所有数据的处理。必须在所有目标系统上执行此操作,直到所有复制进程返回 "At EOF"。

    SEND REPLICAT *group* STATUS
  5. 停止数据泵和复制。

    STOP EXTRACT *group*
    STOP REPLICAT *group*
  6. 更改数据库元数据。

  7. 在源系统上,发出包含主提取的 ETROLLOVER 选项的 ALTER EXTRACT 命令,以将本地线索滚动到新文件的开头。

    ALTER EXTRACT *group*, ETROLLOVER
  8. 开始提取。

    START EXTRACT *group*
  9. 将复制进程重新定位为从新的线索序号开始。

    ALTER REPLICAT *group*, EXTSEQNO *seqno*, EXTRBA *RBA*
  10. 启动复制进程。

START REPLICAT *group*