OGG ERROR OGG-02650 Source wildcard specification .* does not include a catalog name

最近一个朋友在测试Oracle GoldenGate(V12)从oracle 19c到kafka同步时,extract, pump进程都正常,extract有抽取到,但是pump进程running无投递数据。在我修改pump进程从某文件的时间开始后,再次启动终于提示了错误信息:

ERROR OGG-02650 Source wildcard specification USER1.T1 does not include a catalog name, but the source table name PDB1.USER1.T1includes a catalog name.

Oracle GoldenGate Parallel Replication

Serial apply =使用1个apply会话应用, 但是源数据库:有多个连接和多个并发事务, 这样会存在多个生产端一个消费端,这样串行应用因为无法扩展,当源库事务量大时,应用端会出现应用慢,同步延迟增加的现象。

OGG也一直在该方向创新,以提升速度,如抽取端可以使用集成抽取,可以拆成多个抽取任务,应用端可以手动拆成多个应用进程, 和Integrated Replicat、Parallel Nonintegrated Replicat、Parallel Integrated Replicat。

OGG Integrated replicat process Abend with error Ora-4031 “streams pool” “apply shared t”,”commbuf_knasctx[0]”

在 Oracle GoldenGate 中使用集成模式时,STREAMS_POOL 起着至关重要的作用。集成进程从“STREAMS POOL”获取共享内存。STREAMS POOL 是 SGA 的内存组件之一。STREAMS_POOL_SIZE 的大小应根据数据库系统中使用的集成提取的数量来确定。我们还应该考虑在数据库中使用 STREAMS POOL 的其他进程。最近一个案例ogg异常报错,因ora-4031 streams pool不足,简单记录。

Goldengate Replicat Abends With ORA-00001处理方法

当GoldenGate复制进程(Replicat)在目标数据库上遇到ORA-00001唯一性冲突错误时,可以采取以下常见解决方法:

2023-1-617:57:36 WARNING OGG-02544 Unhandled error (ORA-00001: unique constraint (.) violated
ORA-00001: unique constraint (.) violated) while processing the record at SEQNO 936, RBA 67975402 in Integrated mode. REP
LICAT will retry in Direct mode.

Alert: Oracle GoldenGate 19 was change ALLOWNULLABLEKEYS to NOALLOWNULLABLEKEYS

OGG 19.*默认改变原来OGG 12版本ALLOWNULLABLEKEYS为NOALLOWNULLABLEKEYS, 这样会导致在replicat时因为不考虑可为空的唯一索引做为标示键,而使用全字段组合在一起作为行的唯一标识,但是EXTRACE的源库又只有这个唯一键的附加日志,trail中也只有该唯一列更新列时,在replicat时会产生OGG-1403记录不存在,而丢失更新,insert不受影响, 同时oggerr日志中记录的是INFO OGG-06441,这样更不会引起人的注意。

OGG(12.3) Extract long time lag after Oracle RAC a instance Crash

Oracle 12c RAC 1个实例因硬件原因突然crash, 另一实例上的goldengate Extract 进程Lag At Chkpt 持续增加,read checkpoint并不动,开始是因为归档日志被rman备份任务备份后删除,但restore 归档日志从Recovery Checkpoint到当前确认都存在后依旧hang, 清除了BR 文件再次启动extract进程恢复正常

Troubleshooting OGG Char datatype from mysql to ogg fill chr(0)

前几年处理过一个<当C语言的程序处理 chr(0) or ‘\0’ 时的ORA-01008 Case>故障案例, 近期又遇到一个案例是在Golden Gate同步数据时遇到的问题,发现ogg在同步时对于char类型的字段,不足指定长度时,OGG使用的是chr(0)补充, 而对于已有数据是默认chr 32(空格)补充,导致无法匹配问题。

GoldenGate ORA-01400: cannot insert NULL into after “update” , like “upsert” or “merge”

有时出于历史原因或之前使用其它同步产品做同步,后期想改为OGG方案时但不想做原数据一致性比对,或可以接受部分数据不一致,比如目标表可能比原表少数据时,只想在replicat端增加INSERTMISSINGUPDATES参数,如果update目标记录不存在转换insert. 想法是好的?前提是要知道ogg的机制。

Oracle GoldenGate增加字段问题(上): Extract OGG-01028 Number of digits N+ exceeds max N on column

“酒虽好,不要贪杯” ! OGG在同步效率、安全、兼容性上一致做的很出色,广泛用于数据同步,支持异构, 但是在它的使用过程中也要严格按照流程使用,如何在OGG同步的表上做DDL操作有严格流程,如果任性的使用,后期维护必将带给诸多麻烦, 这里简单记录在OGG进程正在同步事务的情况下增加字段导致的抽取进程异常终止。