暂无图片
ogg参数filter的使用问题【急】
我来答
分享
Jacky
2022-07-21
ogg参数filter的使用问题【急】
暂无图片 10M

问题:ogg 里多个filter_clause语法怎么写?


有这么个场景:同步某张表里符合where 条件的记录,查阅资料,发现ogg不支持where里的模糊匹配,所以符合where like条件的记录,都改成调用函数@strfind来匹配


比如:

同步employee表里job_id like 'AD_VP'的记录

在ogg replicat端过滤:

MAP pdb1.hr.employees, TARGET orclpdb.user1.employees,filter ( @strfind (job_id,'AD_VP') > 0) ;

测试同步成功。


但多个filter条件该怎么写呢?比如我要同步job_id like 'AD_VP' or job_id like 'AD_PRES'的记录,语法怎么写都报错。


请问应该怎么解决多个模糊匹配问题? 



我来答
添加附件
收藏
分享
问题补充
3条回答
默认
最新
Jacky

已解决,在filter括号里加个or就行了

MAP pdb1.hr.employees, TARGET orclpdb.user1.employees,filter ( @strfind (job_id,'AD_VP') > 0 or @strfind (job_id,'AD_PRES') > 0);

暂无图片 评论
暂无图片 有用 0
打赏 0
暂无图片
张sir

ogg官方文档里又类似的多个条件的写法,参考下。


https://docs.oracle.com/goldengate/c1230/gg-winux/GWUAD/mapping-and-manipulating-data.htm#GWUAD443


The following example returns all records when the amount column is over 10,000 and does not cause a record to be discarded when amount is absent.

WHERE (amount = @PRESENT AND amount > 10000)
复制
暂无图片 评论
暂无图片 有用 0
打赏 0
杨卓

Primary Note for Oracle GoldenGate for Filtering and Transformation Data (Doc ID 1450495.1)
没看到mos给出模糊匹配,但是Mos说支持多个filter,省事的话,2个条件,2条map filter 不同的条件,或者整2个进程拆分一下,如下链接说还有其它方式可以根据sql语句没测试过,建议测试后执行。
https://blog.51cto.com/u_10226511/3150728

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
ogg复制进程初次启动报1001-ORA-01001: invalid cursor
回答 1
直接看这个报错,MOS检索不到什么信息。 看看DBAlert日志吧,看看有什么明显的报错日志。如果alert也没啥信息,看看对进程删除重建一下,取消集成注册后在删除重建;
OCI Error ORA-14402: updating partition key column would cause a partition change
回答 3
已采纳
需要启用表的rowmovement才行altertableempenablerowmovement;
ogg 新增表,在原来进程里面恢复, start时候怎么指定这个表从某个scn开始恢复?
回答 2
已采纳
mapuser.tablename,targetuser.tablename,filter(@GETENV("TRANSACTION","CSN")>12
ERROR OGG-01224 Oracle GoldenGate Capture for Oracle,
回答 2
telnet192.168.176.1277810通不通?确认目标ip及oggmgr服务是否开启正常。检查网络策略。
OGG同步加触发器不同步
回答 3
目标端加上DBOPTIONSNOSUPPRESSTRIGGERS,目标端启用触发器可能会导致延迟卡住,可自行测试看。
ogg中抽取进程的DDLOPTIONS ADDTRANDATA, REPORT 这个参数,有什么作用?
回答 1
官方文档链接:https://docs.oracle.com/goldengate/1212/ggwinux/GWURF/ggparameters037.htmGWURF451Use ADD
各位大佬们,求OGG文档?
回答 1
链接给你https://www.modb.pro/doclist?tagOGG
mysql-kafka OGG before和after的问题
回答 2
感谢回复。我下午跟同事测了一下,发现text字段如果字符数非常多,就会出现这个问题。oggformysql的版本是12.2.0.1。目前还没找到解决办法。
OGG如何查MGR何时STOP了
回答 2
已采纳
上次你下的监控脚本里面有ogg监控啊。https://www.modb.pro/download/329752脚本代码位置:
ogg 捕获MySQL库问题
回答 1
一个进程就是配置一个库的,如果你还想配置其他库里面的表,再起一个进程。另外即使是在配置oracle数据库,也只能是一个捕获进程对应一个库的。