• OGG初始化之将数据从文件加载到Replicat


    要使用Replicat建立目标数据,可以使用初始加载Extract从源表中提取源记录,并将它们以规范格式写入提取文件。从该文件中,初始加载Replicat使用数据库接口加载数据。在加载过程中,更改同步组提取并复制增量更改,然后与加载结果进行协调。

    在加载过程中,记录每次一个记录地应用于目标数据库,因此该方法比其他任何初始加载方法都要慢很多。该方法允许在源系统或目标系统上完成数据转换。

    将数据从文件加载到Replicat

    1. 确保您已满足初始加载的先决条件中的要求。
    2. 在源系统和目标系统上,运行GGSCI并启动Manager。
      START MANAGER

       在Windows群集中,从群集管理器启动Manager资源。

    3. 在源系统上,发出以下命令以创建初始加载Extract参数文件。
      EDIT PARAMS initial-load_Extract
    4. 按所示顺序输入表15-1中列出的参数,为每个参数语句开始一个新行。以下是用于将数据从文件加载到Replicat的初始加载Extract参数文件的示例。
      SOURCEISTABLE
      SOURCEDB mydb, USERIDALIAS ogg
      RMTHOSTOPTIONS ny4387, MGRPORT 7888, ENCRYPT AES 192 KEYNAME mykey
      ENCRYPTTRAIL AES192
      RMTFILE /ggs/dirdat/initld, MEGABYTES 2, PURGE
      TABLE hr.*;
      TABLE sales.*;

       Table 15-1 Initial-Load Extract Parameters

      Parameter Description
      SOURCEISTABLE
      将Extract指定为初始加载进程,直接从源表中提取记录。
      SOURCEDB dsn [, USERIDALIAS alias, options |
      , USERID user, options]
      指定数据库连接信息。
      SOURCEDB指定源数据源名称(DSN)。
      如果需要,USERID和USERIDALIAS指定数据库凭证。
      RMTHOSTOPTIONS hostname,
      MGRPORT portnumber
      [, ENCRYPT algorithm KEYNAME keyname]
      指定目标系统,运行Manager的端口以及跨TCP / IP的可选数据加密。
      ENCRYPTTRAIL algorithm
      加密远程文件中的数据。
      RMTFILE path,
      [MEGABYTES n]

      trail是文件的相对名称或完全限定名称。
      MEGABYTES指定每个文件的大小

      指定加载数据将写入的提取文件。 Oracle GoldenGate在加载过程中创建该文件。

      检查点不会与RMTFILE一起维护。

      请注意,解压缩文件的大小不能超过2GB。

      TABLE container.owner.object;

      指定对象的全限定名称或多个对象的全限定通配规范。

      如果数据库是Oracle多租户容器数据库,则除非使用SOURCECATALOG,否则对象名称必须包含容器或目录的名称。

      有关在参数文件中指定对象名称的指导,请参阅在Oracle GoldenGate输入中指定对象名称。

      CATALOGEXCLUDE

      SCHEMAEXCLUDE

      TABLEEXCLUDE

      EXCLUDEWILDCARDOBJECTSONLY

      可以相互结合使用的参数,用于从关联的TABLE语句中的通配符规范中排除特定对象。

      有关详细信息,请参阅Oracle GoldenGate参考

    5. 输入Oracle GoldenGate参考中列出的任何适当的可选提取参数。

    6. 保存并关闭参数文件

    7. 在目标系统上,发出以下命令以创建初始加载Replicat参数文件。
      EDIT PARAMS initial-load_Replicat
    8. 按照所示顺序输入表15-2中列出的参数,为每个参数语句开始一个新行。以下是用于将数据从文件加载到Replicat的初始加载Replicat参数文件的示例。
      SPECIALRUN
      END RUNTIME
      TARGETDB mydb, USERIDALIAS ogg
      EXTFILE /ggs/dirdat/initld
      SOURCEDEFS /ggs/dirdef/source_defs
      MAP hr.*, TARGET hr.*;
      MAP sales.*, TARGET hr.*;

      Table 15-2 Initial-load Replicat parameters

      Parameter Description
      SPECIALRUN
      将初始加载Replicat作为不使用检查点的一次性运行实现。
      END RUNTIME
      指示初始加载Replicat在加载完成时终止
      TARGETDB dsn 
      [, USERIDALIAS alias, options |
      , USERID user, options]

      指定数据库连接信息。

      TARGETDB指定目标数据源名称(DSN)。

      如果需要,USERID和USERIDALIAS指定数据库凭证。

      EXTFILE path

       路径是文件的相对名称或完全限定名称。

      指定使用Extract参数RMTFILE指定的输入提取文件。
      {SOURCEDEFS file} |
      ASSUMETARGETDEFS

      1)如果源表和目标表具有不同的定义,请使用SOURCEDEFS。指定由DEFGEN生成的源定义文件的相对名称或完全限定名称

      2)如果源表和目标表具有相同的定义,请使用ASSUMETARGETDEFS。

      指定如何解释数据定义。

      有关数据定义文件的更多信息,请参阅将复制数据与元数据关联

      SOURCECATALOG

      指定默认源Oracle容器。允许使用两部分名称(schema.object),否则这些数据库将需要三部分名称。

      您可以使用此参数的多个实例为不同的MAP参数集指定不同的默认容器或目录。

      MAP container.owner.object,
      TARGET owner.object[, DEF template]
      ;

      指定一个或多个源对象与一个或多个目标对象之间的关系。 MAP指定源对象,TARGET指定目标对象。

      对于源对象,请指定对象的全限定名称或多个对象的全限定通配规范。

      对于Oracle多租户容器数据库,源对象名称必须包含容器或目录的名称,除非使用SOURCECATALOG。

      对于目标对象,不管数据库如何,只指定名称的owner.object组件。

      Replicat只能连接到一个Oracle容器。对要加载数据的每个容器或目录使用单独的Replicat过程。

      有关在参数文件中指定对象名称的指导,请参阅在Oracle GoldenGate输入中指定对象名称

      DEF选项指定一个定义模板。有关数据定义的更多信息,请参阅将复制数据与元数据关联。

      有关MAP参数的更多信息和选项,请参阅Oracle GoldenGate的参考。

      CATALOGEXCLUDE

      SCHEMAEXCLUDE

      MAPEXCLUDE

      EXCLUDEWILDCARDOBJECTSONLY

      可以相互结合使用的参数,用于从关联的MAP语句中的通配符规范中排除特定的源对象。

      有关详细信息,请参阅适用于Windows和UNIX的Oracle GoldenGate参考。

    9. 输入Oracle GoldenGate参考中列出的任何适当的可选Replicat参数。

    10. 保存并关闭文件

    11. 查看Replicat参数文件以确定列出了HANDLECOLLISIONS参数。如果不是,请将该参数添加到文件中。

    12. 在源系统上,开始更改提取。
      START EXTRACT group
    13. (Oracle,如果正在复制序列)发出DBLOGIN命令,作为在update.Sequence上具有EXECUTE特权的用户。
      GGSCI> DBLOGIN USERID DBLOGINuser, PASSWORD password [encryption_options]
    14. (Oracle,如果复制序列)发出以下命令来更新每个源序列并生成重做。从重做开始,Replicat执行目标上序列的初始同步。您可以使用星号通配符表示序列名称中的任何或所有字符(但不是所有者)。
      FLUSH SEQUENCE owner.sequence
    15. 从源系统上安装Oracle GoldenGate的目录中,启动初始加载Extract。 UNIX和Linux:
      $ /GGS directory/extract paramfile dirprm/initial-load_Extract.prm reportfile path

      Where:
        initial-load_Extract是创建参数文件时使用的初始加载Extract的名称,path是Extract报告文件的相对名称或完全限定名称。 
      Windows:

      C:> GGS directoryextract paramfile dirprminitial-load_Extract.prm reportfile path
    16. 通过使用操作系统的查看文件的标准方法查看Extract报告文件来验证初始提取的进度和结果。

    17. 等到初始提取完成。

    18. 在目标系统上,启动初始加载Replicat。
      UNIX and Linux:
      $ /GGS directory/replicat paramfile dirprm/initial-load_Replicat.prm reportfile path

       Where:
      initial-load_Replicat是创建参数文件时使用的初始加载Replicat的名称,path是Replicat报告文件的相对名称或完全限定名称。

    19. 当初始加载Replicat运行完毕后,请使用操作系统的查看文件的标准方法查看Replicat报告文件以验证结果。

    20. 在目标系统上,开始更改复制。
      START REPLICAT group
    21. 在目标系统上,发出以下命令以验证更改复制的状态。
      INFO REPLICAT group
    22. 继续发出INFO REPLICAT命令,直到确认Replicat发布了初始加载期间生成的所有更改数据。例如,如果初始加载Extract在12:05停止,请确保Replicat发布的数据达到该点。

    23. 在目标系统上,发出以下命令关闭HANDLECOLLISIONS参数并禁用初始加载错误处理。
      SEND REPLICAT group, NOHANDLECOLLISIONS
    24. 在目标系统上,编辑Replicat参数文件以删除HANDLECOLLISIONS参数。这样可以防止在下次启动Replicat时再次启用HANDLECOLLISIONS。
       不要使用VIEW PARAMS或EDIT PARAMS命令来查看或编辑除本地操作系统以外的字符集(例如,使用CHARSET选项指定不同字符集的字符集)的现有参数文件。如果是这种情况,请查看GGSCI外部的参数文件;否则,内容可能会损坏。
    25. 保存并关闭参数文件。
      从这一点来看,Oracle GoldenGate将继续同步数据更改。

    参考资料

    https://docs.oracle.com/goldengate/c1230/gg-winux/GWUAD/instantiating-oracle-goldengate-initial-load.htm#GWUAD558

  • 相关阅读:
    zoj1654二分图
    zoj1314无源汇有上下界最大流
    zoj2788最小割
    zoj2587唯一最小割
    poj1815最小割
    Loader之一:基本原理
    Fragment之三:根据屏幕尺寸加载不同的Fragment
    Fragment之一:Fragment入门
    Github android客户端源代码分析之一:环境搭建
    如何在Eclipse中查看Android API源码以及support包源码
  • 原文地址:https://www.cnblogs.com/ZeroTiny/p/9205135.html
Copyright © 2020-2023  润新知