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

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 [email protected]) 5> add extract etest integrated tranlog begin now                                                                                   
EXTRACT (Integrated) added.

GGSCI (host1 as [email protected]) 6> add exttrail ./dirdat/auxdit/lt extract  etest
EXTTRAIL added.

GGSCI (host1 as [email protected]) 9> add extract ptest  exttrailsource ./dirdat/auxdit/lt
EXTRACT added.

GGSCI (host1 as [email protected]) 11> add rmttrail ./dirdat/bsstg/rt extract ptest
RMTTRAIL added.

GGSCI (host1 as [email protected]) 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 [email protected]) 15> start manager
Manager started.

GGSCI (host1 as [email protected]) 16> start etest
EXTRACT ETEST starting

GGSCI (host1 as [email protected]) 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

时间: 2024-08-07 00:14:34

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

Oracle GoldenGate 19.1新特性

1.GoldenGate 19.1 新特性概览a.支持Oracle数据库19.1 长期支持发布版本.集成Oracle GoldenGate 12.3版的最终补丁集更新.b.微服务的安全性和可管理性增强与密钥管理系统集成,支持DMZ环境.Defaults changed to TLS1.2, Digest Auth, Strong Password VerifierManaged profiles for AutoStart, AutoRestart, and Key Management.c.性

Oracle Audit Vault and Database Firewall 12.2 新特性

Oracle Audit Vault and Database Firewall 12.2 新特性 Audit Vault Server的备份恢复组件被集成进AVDF产品. 当Audit Vault Agent(审计代理)重新启动或AVDF升级收,Audit Trail(审计线索)将会自动启动. AVCLI组件可以非交互式使用,通过存储在AVCLI的Wallet里存储管理员的认证信息. 可以使用Auidit Vault Agent(审计代理)的处理线程数量优化主机处理的性能. 可以配置Datab

【译】 Node.js v0.12的新特性 -- Cluster模式采用Round-Robin负载均衡

原文:https://strongloop.com/strongblog/whats-new-in-node-js-v0-12-cluster-round-robin-load-balancing Node.js v0.12的新特性 -- Cluster采用轮询调度算法来进行负载均衡 November 19, 2013 by Ben Noordhuis 欢迎来到由Node的核心提交者 Ben Noordhuis 和 Bert Belder撰写的系列博文的第一篇.本系列可能由7-8篇构成,主要涵盖

版本12.1新特性:优先级负载均衡法

如果不希望负载均衡,一组服务器down掉才启用下一组怎么办?在以前版本的实现方法是backup vserver,或者做个反向的monitor.如果实现的组比较多,逻辑上还是有些复杂的. 而在 12.1单独实现了最简单的逻辑:优配先级 新版多了一个按钮 优先级负载均衡 建立vserver时定义下面有几组备份服务器 定义好后插入服务器组,每组直接选定优先级就可以了 版本12.1新特性:优先级负载均衡法 原文地址:http://blog.51cto.com/netscaler/2120602

goldengate 12c 12.2 新特性

GoldenGate 12.2已经提供下载,增加了不少新特性 1. 异构配置加强不在需要sourceDefs和AssumeTargetDefs文件,在队列文件中已经包含metadata信息,比如table name, column name, column type等,进一步降低OGG在异构环境下配置的工作量: 2. 内置心跳表在早期的OGG版本中,如果要监控进程的延迟状态,需要手工创建心跳表,现在通过配置就可以启用心跳表监控功能,在GGSCI中add heartBeatTable即可.此时,会

Oracle 12.1新特性----使用RMAN从备份中实现recover table

在Oracle12c版本之前,使用RMAN能恢复的级别为数据库级别和表空间级别,如果只有一张表需要恢复,而在数据库级别或表空间级别做恢复,影响范围就太大了.因此12.2版本中提供了一个新特性使用RMAN在表级别做恢复,并且恢复过程中不影响数据库的正常使用.这一功能不仅可以恢复表,还可以恢复表分区. 下面在12.2版本上做表级别恢复的实验 [email protected]>select * from v$version; BANNER      CON_ID ------------------

Oracle Database 12.2新特性详解

在2015年旧金山的Oracle OpenWorld大会上,Oracle发布了Database 12.2的Beta版本,虽然Beta版本只对部分用户开放,但是大会上已经公布了12.2的很多重要的新特性,云和恩墨是Oracle的Beta用户,已经开始测试这一产品.在刚刚结束的"Oracle技术嘉年华"大会上,更详细的主题分享披露了更多内容.在这篇文章中,我将和大家一一来细数Oracle Database 12.2的新特性. Oracle Sharding的实现 简单来说,Oracle的S

Oracle 12.2新特性----在线move表

Oracle12.2版本之前,对表做move操作时会对表加exclusive锁,表上无法执行DML操作.虽然move操作有ONLINE子句,但只适用于IOT表,不适用于堆表.这就意味着在对表做move操作时,无法执行任何DML操作,如果对关键表做move操作时只能停业务来完成.到了Oracle12.2版本,推出了一个新特性----在线move表,对于普通堆表可以在move过程中执行DML操作. 下面以11.2.0.4和12.2.0.1这两个版本为对比,观察这一新特性. 1.11.2.0.4版本的

Oracle 12.2新特性----在线把非分区表转为分区表

在Oracle12.2版本之前,如果想把一个非分区表转为分区表常用的有这几种方法:1.建好分区表然后insert into select 把数据插入到分区表中:2.使用在线重定义(DBMS_REDEFINITION)的方法.它们的币是:第一种方法,如果对表有频繁的DML操作,尤其是update操作,就需要停业务来做转换.第二种方法可以在线进行操作,不需要停业务,但操作步骤比较复杂,且可能出错. Oracle12cR2版本中提供了一种新特性,一条语句就可以把非分区表转换为分区表,语法如下: ALT