Goldengate 12.2新特性-自描述的队列文件

2023-11-14

OGG12.2中最大的变化之一就是队列文件是自描述的,意思是不再担心以前版本中,表结构异构的情况,也不再需要defgen生成定义文件,以及不再使用assumeTargetDefs或SourceDefs参数。许多手工处理的步骤不再需要了。即使源和目标是不同的平台或数据库也是如此。因为队列文件中已经包含了表结构等元信息。

下面的示例中会演示这个特性,现在队列文件中包含有两个重要的信息 DDR(数据库定义记录)TDR(表定义记录)
每个队列文件在某个库的任何一个DML或序列操作之前都会包含一个DDR,DDR中包含有数据库的特别信息,如字符集、数据库名、数据库类型等。
同时,在任何一个表的DML之前,队列文件中还会有一条TDR,TDR中包含有表名、字段定义,如字段数、字段类型、字段长度等。


下面在源和目标端分别创建一个结构不同的测试表。
源:

SQL> create table system.test_ogg  (emp_id number, first_name varchar2(20), last_name varchar2(20));
Table created.

SQL> alter table system.test_ogg  add constraint pk_test_ogg primary key (emp_id);
Table altered.

目标端:

SQL> create table system.test_ogg (emp_id number,f_name varchar(20),l_name varchar2(20));
Table created.

SQL> alter table system.test_ogg add constraint pk_test_ogg primary key (emp_id);
Table altered.

 
源端创建抽取和传输进程:
host1>./ggsci

GGSCI (host1 as oggsuser@DB01) 5> add extract etest integrated tranlog begin now                                                                                   
EXTRACT (Integrated) added.

GGSCI (host1 as oggsuser@DB01) 6> add exttrail ./dirdat/auxdit/lt extract  etest
EXTTRAIL added.

GGSCI (host1 as oggsuser@DB01) 9> add extract ptest  exttrailsource ./dirdat/auxdit/lt
EXTRACT added.

GGSCI (host1 as oggsuser@DB01) 11> add rmttrail ./dirdat/bsstg/rt extract ptest
RMTTRAIL added.


GGSCI (host1 as oggsuser@DB01) 10> register extract etest database
2015-12-21 05:09:33  INFO    OGG-02003  Extract ETEST successfully registered with database at SCN 391450385.

 
抽取和传输进程参数
extract etest
USERIDALIAS oggsuser_bsstg

LOGALLSUPCOLS
UPDATERECORDFORMAT COMPACT
TRANLOGOPTIONS EXCLUDEUSER OGGSUSER
TRANLOGOPTIONS INTEGRATEDPARAMS (max_sga_size 2048, parallelism 2)

EXTTRAIL ./dirdat/auxdit/lt
WARNLONGTRANS 2h, CHECKINTERVAL 30m
REPORTCOUNT EVERY 15 MINUTES, RATE
STATOPTIONS  RESETREPORTSTATS
REPORT AT 23:59
REPORTROLLOVER AT 00:01 ON MONDAY
GETUPDATEBEFORES

TABLE SYSTEM.TEST_OGG;



EXTRACT ptest
USERIDALIAS oggsuser_bsstg
RMTHOST host2,  MGRPORT 7809 TCPBUFSIZE 200000000, TCPFLUSHBYTES 200000000, compress
RMTTRAIL ./dirdat/bsstg/rt
PASSTHRU
REPORTCOUNT EVERY 15 MINUTES, RATE
TABLE SYSTEM.TEST_OGG;


目标端创建投递进程

GGSCI (host2) 2> add replicat rtest integrated exttrail ./dirdat/bsstg/rt
REPLICAT (Integrated) added.

投递进程参数文件,里面不再需要ASSUMETARGETDEFS

REPLICAT rtest
SETENV (ORACLE_HOME="/orasw/app/oracle/product/12.1.0/db_1")
SETENV (TNS_ADMIN="/orasw/app/oracle/product/12.1.0/db_1/network/admin")
SETENV (NLS_LANG = "AMERICAN_AMERICA.AL32UTF8")
USERIDALIAS oggsuser_auxdit
MAP SYSTEM.TEST_OGG, TARGET SYSTEM.TEST_OGG;


启动这三个进程
GGSCI (host1 as oggsuser@DB01) 15> start manager
Manager started.

GGSCI (host1 as oggsuser@DB01) 16> start etest
EXTRACT ETEST starting

GGSCI (host1 as oggsuser@DB01) 17> start ptest

GGSCI (host2) 3> start rtest

GGSCI (host2) 4> info rtest

REPLICAT   RTEST     Last Started 2015-12-21 05:21   Status RUNNING
INTEGRATED
Checkpoint Lag       00:00:00 (updated 00:08:53 ago)
Process ID           29864
Log Read Checkpoint  File ./dirdat/bsstg/rt000000000
                     First Record  RBA 0


源端db插入一行:

SQL> insert into system.test_ogg values (007, 'JAMES','BOND');
1 row created.

SQL> commit;
Commit complete.

目标端投递进程上可以看到已经有变化
GGSCI (host2) 5> stats rtest latest

Sending STATS request to REPLICAT RTEST ...

Start of Statistics at 2015-12-21 05:26:32.


Integrated Replicat Statistics:

        Total transactions                                 1.00
        Redirected                                         0.00
        DDL operations                                     0.00
        Stored procedures                                  0.00
        Datatype functionality                             0.00
        Event actions                                      0.00
        Direct transactions ratio                          0.00%

Replicating from SYSTEM.TEST_OGG to SYSTEM.TEST_OGG:

*** Latest statistics since 2015-12-21 05:25:33 ***
        Total inserts                                      1.00
        Total updates                                      0.00
        Total deletes                                      0.00
        Total discards                                     0.00
        Total operations                                   1.00

End of Statistics.


在投递进程的输出日志中,可以看到在队列文件中有获取到test_ogg表的定义信息

2015-12-21 05:25:22  INFO    OGG-06505  MAP resolved (entry SYSTEM.TEST_OGG): MAP "SYSTEM"."TEST_OGG", TARGET SYSTEM.TEST_OGG.

2015-12-21 05:25:33  INFO    OGG-02756  The definition for table SYSTEM.TEST_OGG is obtained from the trail file.

By using the logdump utility we can view the Database Definition Record (DDR) as well as Table Definition Record (TDR) information contained in the trail file.

DDR Version: 1
Database type: ORACLE
Character set ID: we8iso8859p1
National character set ID: UTF-16
Locale: neutral
Case sensitivity: 14 14 14 14 14 14 14 14 14 14 14 14 11 14 14 14
TimeZone: GMT-07:00
Global name: BSSTG

2015/12/21 05:25:18.534.893 Metadata             Len 277 RBA 1541
Name: SYSTEM.TEST_OGG
*
 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 Sig DT
13)Least Sig DT 14)High Precision  15)Low Precision   16)Elementary Item  17)Occurs       18)Key Column
19)Sub DataType 20)Native DataType 21)Character Set   22)Character Length 23)LOB Type     24)Partial Type
*
TDR version: 1
Definition for table SYSTEM.TEST_OGG
Record Length: 108
Columns: 3

EMP_ID       64     50        0  0  0 1 0     50     50     50 0 0 0 0 1    0 1   2    2       -1      0 0 0
FIRST_NAME   64     20       56  0  0 1 0     20     20      0 0 0 0 0 1    0 0   0    1       -1      0 0 0
LAST_NAME    64     20       82  0  0 1 0     20     20      0 0 0 0 0 1    0 0   0    1       -1      0 0 0
End of definition

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Goldengate 12.2新特性-自描述的队列文件 的相关文章

  • Ubuntu安装java

    转自 https www cnblogs com ziyue7575 p 13898610 html java8 apt安装 参考 https www cnblogs com zzy1024 p 11406269 html 若是没有配置国内

随机推荐

  • Motion Library for Unity——(Rokoko)

    unity动画插件Motion library 介绍 unity中项目设置 步骤 介绍 Motion Library是Unity编辑器的一个插件 允许你在编辑器中搜索 预览和购买市场上的动作资产 rokoko官网 unity中项目设置 需要
  • RFID系统信号通信过程

    如图
  • React 函数组件与类组件属性默认值

    一 函数组件 方式一 使用 defaultProps 设置默认值 import React from react import PropTypes from prop types function Sub props return lt g
  • 正点原子STM32 H743完成RT Thread下的LAN8720 网卡驱动 LWIP跑起来

    目前RT官网对H743的支持力度还不理想 本想按照F407的搞定网卡的套路来搞定H743的网卡 因为phy也是LAN 8720 以为会很轻松 没想到却是一条遍布荆棘的路 好在已经有不少大佬做了不少工作 终于在巨人肩膀人完成了网卡的驱动 能p
  • leetcode 1491 去掉最低工资和最高工资后的工资平均值

    leetcode 1491 去掉最低工资和最高工资后的工资平均值 题目描述 给你一个整数数组 salary 数组里每个数都是 唯一 的 其中 salary i 是第 i 个员工的工资 请你返回去掉最低工资和最高工资以后 剩下员工工资的平均值
  • 模型评估标准常用指标

    一 分类指标 样本中存在两种两种标签 样本真实标签和模型预测标签 根据这两个标签可以得到一个混淆矩阵 每一行代表样本的真实类别 数据总数表示该类别的样本总数 每一列代表样本的预测类别 数据总数表示该类别的样本总数 分类模型的评价指标主要基于
  • GPT-4 剑指多模态,前有谷歌 PaLM-E,AI 格局要变?

    本文首发自 HyperAI超神经微信公众号 美东时间 3 月 14 日 OpenAI 重磅推出大型多模态模型 GPT 4 GPT 4 是 ChatGPT 和 Bing AI 聊天机器人背后的技术基础 OpenAI 称 GPT 4 能接受图像
  • IEEE PDF eXpress系统报错:TimesNewRoman PS-BoldMT, ItalicMT, PSM

    问题 IEEE PDF eXpress系统报错 Errors Font TimesNewRomanPS BoldMT TimesNewRomanPS ItalicMT TimesNewRomanPSMT is not embedded 13
  • Python2.7和Python3.6的和平相处,pip冲突的解决办法

    第一次写 有点紧张 呈上自己遇到的一系列问题 及解决办法 我一开始在windows10下面装了python3 6 1 由于需要用到python2 7 所以昨天按照网上的教程安装 1 下载python2 7 配置环境变量 可以在下载过程中进行
  • QT ‘XXX‘ was not declared in this scope

    QT XXX was not declared in this scope 1 未定义 解决办法 变量直接使用但没有定义 定义相应的函数或变量即可 2 字符错误 解决办法 看看字母或者括号是否写错了 3 超出作用域 解决办法 增加声明 扩大
  • malloc的实现原理

    在开发c或c 时 经常需要分配内存 如今常用的分配内存函数为malloc tcmalloc jemalloc 其中属于malloc使用最平常 因为属于c标准库函数 但是网上有有实验证明另外两个效率比malloc高 这篇文章主要还是分析mal
  • openWrt 安装管理界面luci中文包

    openWrt15安装管理界面luci中文包 如果刚刷的openwrt15没有中文界面 用ssh连接路由后用opkg安装 root bang bang tang opkg install luci i18n base zh cn Unkno
  • 关于自己对像Chat-GPT的反应速度感悟

    这几个月相信大家应该对ChatGPT都不陌生了吧 因为这个东西已经在各大社交媒体可以说是无限次曝光了 就连一些其他行业的 完全跟科技行业沾不上边的朋友们 都知道了 可想而知 这个是有多火了 而我之所以发表这个感悟 其实也是自己的一个反思吧
  • matlab画矩阵无向网络图,[转]矩阵生成无向网络图

    功能是将邻接矩阵或关联矩阵变为网络图 不过这里只能转换为无向图 有向图的箭头还需要在研究一下 似乎有annotation函数可以调用 函数名netplot 使用方法输入请help netplot 无返回值 函数只能处理无向图 作者 tian
  • 【Java编程】JavaSE基础总结(三):异常机制、泛型

    JavaSE基础总结 三 1 Java异常机制 1 1 异常 在理想的情况下 我们的程序会按照我们的思路去运行 按理说是不会出现问题的 但是 代码实际编写后并不一定是完美的 可能会有我们没有考虑到的情况 如果这些情况能够正常得到一个错误的结
  • 在C++中 ,什么时候用:: ?什么时候用. ?什么时候用->?

    在C 中 什么时候用 什么时候用 什么时候用 gt 在 C 中 和 gt 是三种不同的运算符 用于访问类 结构体 命名空间 指针等的成员 它们的使用场景如下 作用域解析运算符 用于访问命名空间的成员或静态成员 例如 假设有一个命名空间 My
  • 内核中时间相关的知识介绍

    1 内核要解决的时间相关问题 1 如何度量时间差 如何比较时间 2 如何获取当前时间 3 如何将操作延迟指定的一段时间 4 如何调度异步函数到指定的时间之后执行 2 度量时间差 2 1 内核度量时间的原理 1 Soc有时间相关的硬件 比如定
  • tar打包split分割分解拆分大包文件

    2010 01 26 12 47 http hi baidu com hovlj 1130 item fe21d8342e68aa86c3cf2928 tar打包split分割分解拆分大包文件 有时候远程下载tar包的时候 由于包太大 失去
  • 语法分析—自上而下分析

    1 美图 2 位置 语法分析器的功能 语法分析的任务是分析一个文法的句子结构 语法分析器的功能 按照文法的产生式 语言的语法规则 识别输入符号串是否为一个句子 合式程序 语法分析的方法 不行 看不懂 我太难了 不看了
  • Goldengate 12.2新特性-自描述的队列文件

    OGG12 2中最大的变化之一就是队列文件是自描述的 意思是不再担心以前版本中 表结构异构的情况 也不再需要defgen生成定义文件 以及不再使用assumeTargetDefs或SourceDefs参数 许多手工处理的步骤不再需要了 即使