您的位置:首页 > 编程语言 > Go语言

Using GoldenGate EVENTACTIONS to customize processing

2015-03-11 09:17 337 查看
EVENTACTIONS 可以指定一些关键字来触发一些事件,关键字有:IGNORE, DISCARD, ABORT, STOP, SHELL, TRACE, LOG

For Example:
GGSCI (zbdba1) 6> view param ext1

EXTRACT EXT1
setenv ( NLS_LANG = AMERICAN_AMERICA.ZHS16GBK )
USERID ogg,PASSWORD ogg
DDL &
INCLUDE MAPPED OBJTYPE 'TABLE' &
INCLUDE MAPPED OBJTYPE 'IDNEX' &
INCLUDE MAPPED OBJTYPE 'SEQUENCE' &
INCLUDE MAPPED OBJTYPE 'VIEW' &
INCLUDE MAPPED OBJTYPE 'PROCEDURE' &
INCLUDE MAPPED OBJTYPE 'FUNCTION' &
INCLUDE MAPPED OBJTYPE 'PACKAGE' &
INCLUDE MAPPED OBJTYPE 'MATERIALIZED VIEW' &
EXCLUDE OPTYPE COMMENT
DDLOPTIONS ADDTRANDATA NOCROSSRENAME REPORT
REPORTCOUNT EVERY 1 MINUTES,RATE
DISCARDFILE ./dirrpt/EXTSA.DSC,APPEND,MEGABYTES 1024
THREADOPTIONS MAXCOMMITPROPAGATIONDELAY 60000 IOLATENCY 60000
DBOPTIONS ALLOWUNUSEDCOLUMN
WARNLONGTRANS 2H,CHECKINTERVAL 3M
exttrail ./dirdat/sa
FETCHOPTIONS NOUSESNAPSHOT,FETCHPKUPDATECOLS,MISSINGROW REPORT
table zbdba.test;

GGSCI (zbdba1) 7> view param ext2

EXTRACT EXT2
passthru
RMTHOST 192.168.56.61,MGRPORT 7839,COMPRESS
RMTTRAIL ./dirdat/sa
table zbdba.test;

GGSCI (zbdba2) 6> view param rep1

REPLICAT rep1
ASSUMETARGETDEFS
USERID ogg, PASSWORD ogg
discardfile ./dirdat/rep1_discard.txt,append,megabytes 5
DDL INCLUDE MAPPED
DDLOPTIONS REPORT
--BATCHSQL
DBOPTIONS DEFERREFCONST
DBOPTIONS LOBWRITESIZE 102400
HANDLECOLLISIONS
DDLERROR DEFAULT DISCARD RETRYOP MAXRETRIES 5 RETRYDELAY 20
--grouptransops 1
--maxtransops 1
APPLYNOOPUPDATES
MAP zbdba.test, TARGET zbdba.test,FILTER (@STREQ (OWNER, "ZBDBA" )), EVENTACTIONS ( IGNORE TRANS , STOP, SHELL "/ogg/hello.sh" );这里指定当test表中的owner字段为ZBDBA市,就忽略事务,停止replicat进程,执行shell脚本。

那么我们来测试一下:
Source:
SQL> insert into test(owner,table_name) values('ZBDBA','zbdba');

1 row created.

SQL> commit
2 ;

Commit complete.


Target:
tail -100f ggserr.log
2015-03-09 22:51:01  INFO    OGG-00996  Oracle GoldenGate Delivery for Oracle, rep1.prm:  REPLICAT REP1 started.
2015-03-09 22:51:37  WARNING OGG-00869  Oracle GoldenGate Delivery for Oracle, rep1.prm:  No unique key is defined for table 'TEST'. All viable columns will be used to represent the key, but may not guarantee uniqueness.  KEYCOLS may be used to define the key.
2015-03-09 22:51:37  INFO    OGG-01286  Oracle GoldenGate Delivery for Oracle, rep1.prm:  Executing shell command '/ogg/hello.sh' due to SHELL event for target table ZBDBA.TEST in file /ogg/dirdat/sa000004, RBA 1314.
2015-03-09 22:51:37  INFO    OGG-01287  Oracle GoldenGate Delivery for Oracle, rep1.prm:  Successfully executed shell command '/ogg/hello.sh'.
2015-03-09 22:51:37  WARNING OGG-01283  Oracle GoldenGate Delivery for Oracle, rep1.prm:  Stopping process due to STOP event for target table ZBDBA.TEST in file /ogg/dirdat/sa000004, RBA 1314        STOP request pending end-of-transaction (1 records so far).
2015-03-09 22:51:37  INFO    OGG-00994  Oracle GoldenGate Delivery for Oracle, rep1.prm:  REPLICAT REP1 stopped normally.


发现进程停止并且执行脚本

查看进程:
GGSCI (zbdba2) 7> info all

Program Status Group Lag at Chkpt Time Since Chkpt

MANAGER RUNNING
REPLICAT STOPPED REP1 00:00:06 00:07:59 查看脚本:
[ogg@zbdba2 ogg]$ cat hello.sh
#!/bin/bash
touch zbdba.txt

[ogg@zbdba2 ogg]$ ll zbdba.txt
-rw-rw-rw- 1 ogg oinstall 0 Mar 9 22:51 zbdba.txt
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  goldengate EVENTACTIONS