OGG的defgen工具使用 您所在的位置:网站首页 ogg抽取进程配置过滤指定字段 OGG的defgen工具使用

OGG的defgen工具使用

2024-07-06 21:04| 来源: 网络整理| 查看: 265

目录 defgen1.创建参数文件2.执行命令生成3.查看生成文件的内容总结

defgen

官网介绍链接:link. 要在目标端执行列映射和转换,请使用在源上生成的source-definitions文件将源定义提供给Replicat。 默认情况下,DEFGEN将定义文件本身写入本地操作系统的字符集中。如果满足以下条件,则可以在本地系统上创建定义文件并将其传输到远程系统,而不会出现与编码有关的任何问题:

这里我使用的时候就是采用该种方式,在源端生成defgen文件,然后将该文件scp到目标端。 这是生成def文件所需的参数文件 defgen.prm

1.创建参数文件

在ggsci下,输入edit param def.prm

DEFSFILE /ogg/dirdef/dbus.def purge USERID ogg_admin, PASSWORD ogg_admin table DBUS.DBUS_COPY; //如果有多个table 需要另起一行 //table DBUS.DBUS_CP;

参数解释 DEFSFILE FILE_NAME [APPEND | PURGE] , 指定生成的defgen文件的路径和名称 purge代表每次写入文件前,先删除该文件的内容,再写入。 如果是想要追加相同的内容,就改为append 但是一般不怎么用append 如果不加purge或者append, 那么当你之前的文件存在时,你执行命令去生成def文件时 是会报错的。

ERROR OGG-00037 DEFSFILE file /ogg/dirdef/gp25.def already exists.

所以一般建议加上purge

2.执行命令生成

退出命令行,/ogg/目录下执行命令:./defgen paramfile dirprm/defgen.prm

./defgen paramfile dirprm/gp25.prm *********************************************************************** Oracle GoldenGate Table Definition Generator for Oracle Version 12.3.0.1.4 OGGCORE_12.3.0.1.0_PLATFORMS_180415.0359 Linux, x64, 64bit (optimized), Oracle 11g on Apr 15 2018 10:11:00 Copyright (C) 1995, 2018, Oracle and/or its affiliates. All rights reserved. Starting at 2020-04-21 14:32:38 *********************************************************************** Operating System Version: Linux Version #1 SMP Wed Apr 13 00:51:26 EDT 2016, Release 2.6.32-642.el6.x86_64 Node: zetamdw Machine: x86_64 soft limit hard limit Address Space Size : unlimited unlimited Heap Size : unlimited unlimited File Size : unlimited unlimited CPU Time : unlimited unlimited Process id: 40468 *********************************************************************** ** Running with the following parameters ** *********************************************************************** DEFSFILE /ogg/dirdef/gp25.def purge USERID ogg_admin, PASSWORD *** TABLE DBUS.DBUS_GP5; Retrieving definition for DBUS.DBUS_GP5. Definitions generated for 1 table in /ogg/dirdef/gp25.def.

可以看到输出信息中以及成功生成了 def文件

3.查看生成文件的内容

cat /ogg/dirdef/gp25.def

*+- Defgen version 5.0, Encoding UTF-8 * * Definitions created/modified 2020-04-21 14:32 * * Field descriptions for each column entry: * * 1 Name * 2 Data Type * 3 External Length * 4 Fetch Offset * 5 Scale * 6 Level * 7 Null * 8 Bump if Odd * 9 Internal Length * 10 Binary Length * 11 Table Length * 12 Most Significant DT * 13 Least Significant DT * 14 High Precision * 15 Low Precision * 16 Elementary Item * 17 Occurs * 18 Key Column * 19 Sub Data Type * 20 Native Data Type * 21 Character Set * 22 Character Length * 23 LOB Type * 24 Partial Type * Database type: ORACLE Character set ID: UTF-8 National character set ID: CESU-8 Locale: neutral Case sensitivity: 14 14 14 14 14 14 14 14 14 14 14 14 11 14 14 14 TimeZone: GMT * Definition for table DBUS.DBUS_GP5 Record length: 442 Syskey: 0 Columns: 7 ID 64 50 0 0 0 1 0 50 50 50 0 0 0 0 1 0 1 2 2 -1 0 0 0 NAME 64 100 56 0 0 1 0 100 100 0 0 0 0 0 1 0 0 0 1 -1 0 0 0 AGE 64 50 162 0 0 1 0 50 50 50 0 0 0 0 1 0 0 2 2 -1 0 0 0 EMAIL 64 50 218 0 0 1 0 50 50 50 0 0 0 0 1 0 0 2 2 -1 0 0 0 ADDRESS 64 50 274 0 0 1 0 50 50 50 0 0 0 0 1 0 0 2 2 -1 0 0 0 TEST 64 50 330 0 0 1 0 50 50 50 0 0 0 0 1 0 0 2 2 -1 0 0 0 TEST1 64 50 386 0 0 1 0 50 50 50 0 0 0 0 1 0 0 2 2 -1 0 0 0 End of definition

可以看到,源表的所有字段都已经存在在这个文件中。

总结

基本用法就是这样 在OGG使用过程中,如果源端是oracle,目标端是不一样的数据库 可以用到defgen工具进行数据类型定义和数据类型转换



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有