要使用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 directory\extract paramfile dirprm\initial-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

OGG初始化之将数据从文件加载到Replicat的更多相关文章

  1. OGG初始化之使用Oracle Data Pump加载数据

    此方法使用Oracle Data Pump实用程序来建立目标数据.将副本应用于目标后,您将记录副本停止的SCN.包含在副本中的交易将被跳过以避免完整性违规冲突.从流程起点,Oracle GoldenG ...

  2. Tomcat启动时加载数据到缓存---web.xml中listener加载顺序(例如顺序:1、初始化spring容器,2、初始化线程池,3、加载业务代码,将数据库中数据加载到内存中)

    最近公司要做功能迁移,原来的后台使用的Netty,现在要迁移到在uap上,也就是说所有后台的代码不能通过netty写的加载顺序加载了. 问题就来了,怎样让迁移到tomcat的代码按照原来的加载顺序进行 ...

  3. SQL Server ->> 自动创建表并从文件加载数据

    这个存储过程自动创建表并从文件加载数据. 有一点需要说明的是Excel 12.0驱动是兼容了Excel 97-2003和Excel 2007两者格式的Excel文件. CREATE PROCEDURE ...

  4. Android 的 so 文件加载机制

    本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 最近碰到一些 so 文件问题,顺便将相关知识点梳理一下. 提问 本文的结论是跟着 System.loadlibrary() 一层层源 ...

  5. 插件化框架解读之so 文件加载机制(四)

    阿里P7移动互联网架构师进阶视频(每日更新中)免费学习请点击:https://space.bilibili.com/474380680 提问 本文的结论是跟着 System.loadlibrary() ...

  6. php基础知识(3)(文件加载include)

    文件加载 综述: 有4个文件加载的语法形式(注意,不是函数): include,  include_once,  require, require_once; 他们的本质是一样的,都是用于加载/引入/ ...

  7. 文件加载---理解一个project的第一步

    当我最开始写php的时候,总是担心这个问题:我在这儿new的一个class能加载到对应的类文件吗?毕竟一运行就报Fatal Error,什么**文件没找到,类无法实例化等等是一种很“低级”的错误,怕别 ...

  8. Java基础之Throwable,文件加载

    Java中的异常与错误都继承自Throwable,Exception又分为运行时异常(RuntimeException)和编译时异常. 运行时异常是程序的逻辑不够严谨或者特定条件下程序出现了错误,例如 ...

  9. 软件光栅器实现(四、OBJ文件加载)

    本节介绍软件光栅器的OBJ和MTL文件加载,转载请注明出处. 在管线的应用程序阶段,我们需要设置光栅器所渲染的模型数据.这些模型数据包括模型顶点的坐标.纹理.法线和材质等等,可以由我们手动编写,也可以 ...

随机推荐

  1. (点到线段的最短距离)51nod1298 圆与三角形

    1298 圆与三角形 给出圆的圆心和半径,以及三角形的三个顶点,问圆同三角形是否相交.相交输出"Yes",否则输出"No".(三角形的面积大于0).   收起 ...

  2. lucene之中文分词及其高亮显示(五)

    中文分词:即换个分词器 Analyzer analyzer = new StandardAnalyzer();// 标准分词器     换成  SmartChineseAnalyzer analyze ...

  3. Java中的Dom4j

    上一篇讲了Java中如何操作XML,现在介绍一个更厉害的方法,Dom4j ,百度查一下就知道,这个更强,更快,更简单. 自己下载jar包导入工具,下面来讲一个例子,我事先准备了一个XML文件,如下: ...

  4. C语言复习---找出报数最后一人

    题意: 有n个人围成一圈 顺序排号 从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位. 算法实现: (一)一种是按照链表数据结构(一)线性表循环链表之约瑟夫环 ...

  5. netty的对象传输

    pom <!-- https://mvnrepository.com/artifact/io.netty/netty-all --> <dependency> <grou ...

  6. lnk快捷方式变记事本打开还原,桌面图标变lnk还原方法

    今天天碰到一坑爹问题,打开一个.ini文件自动设置用记事本打开,所有快捷方式都变成记事本打开了,如下图,网上找了一些方法. windows中LNK文件打开方式恢复 相信有些用户曾试过错误地把LNK文件 ...

  7. JQuery1.72中二个Bug,formhtml()方法与clone()方法的二个Bug进行重写

    //扩展方法$.formhtml,解决firefox中html()方法得不到修改input值后的html代码(function ($) {    var oldHTML = $.fn.html;    ...

  8. 阅读:ECMAScript 6 入门(1)

    参考 ECMAScript 6 入门 ES6新特性概览 ES6 全套教程 ECMAScript6 (原著:阮一峰) JavaScript 教程 重新介绍 JavaScript(JS 教程) 前言 学了 ...

  9. 学习总结:CSS(二)块级与行级元素特性、盒模型、层模型、BUG与BFC、浮动模型

    一.元素的块级与行级特性 在CSS属性display控制元素是否及如何显示的特性,常用的值有none.inline.block.inline-block,在CSS3中还有一些新的特性状态,在这里不做讨 ...

  10. spring boot @Value Could not resolve placeholder

    @Configuration public class PropertySourcePlaceholderConfig { @Bean public PropertySourcesPlaceholde ...