OGG常用参数

MGR进程参数

参数 说明
PORT 指定服务监听端口,默认端口为7809
DYNAMICPORTLIST 动态端口,当指定端口不可用时,MGR进程会从动态端口中选择一个可用端口
COMMENT 注释行,等价于–
AUTOSTART MGR进程启动时自动启动指定进程
AUTORESTART 自动重启进程。例如:AUTORESTART EXTRACT,RETRIES 5,WAITMINUTES 3表示当EXTRACT进程异常时,每三分钟尝试重启所有EXTRACT进程,尝试五次
PURGEOLDEXTRACTS 定期清理指定目录下的trail文件,例如:PURGEOLDEXTRACTS ./dirdat/,usecheckpoints,minkeepdays 3 表示对超过三天的trail文件进行清理
LAGREPORT / LAGINFO / LAGCRITICAL 设置延迟告警阀值,例如:LAGREPORTHOURS 1 LAGINFOMINUTES 30 LAGCRITICALMINUTES 60表示每小时进行一次延迟检查,延迟超过30分钟则以普通信息输出到错误日志文件中,如果超过60分钟则以警告的形式记录到错误日志中
CHECKMINUTES 定义MGR检查和告警的频率

EXTRACT进程参数

参数 说明
SETENV 设置环境变量,例如设置ORACLE_SID:SETENV(ORACLE_SID=“source”)
USERID/PASSWORD 指定连接数据库的用户名和密码
TABLE 指定同步表,以分号分割。可以设置为单表也可以通过’schema.*‘指定schema下的所有表。同时可以结合FETCHCOLS指定需要的列
TABLEEXCLUDE 指定需要排除的同步表
GETUPDATEAFTERS / IGNOREUPDATEAFTERS 是否写入更新后的镜像,默认复制
GETUPDATEBEFORES / INGOREUPDATEBEFORES 是否写入更新前的镜像,默认不复制
GETUPDATES / INGOREUPDATES 是否复制UPDATE,默认复制
GETDELETES / INGOREDELETES 是否复制DELETE,默认复制
GETINSERTS / INGOREINSERTS 是否复制INSERT,默认复制
GETTRUNCATES / INGORETRUNCATES 是否复制TRUNCATE,默认不复制
RMTHOST,MGRPORT 指定目标端IP以及MGR进程端口,例如 RMTHOST 10.0.10.110,MGRPORT 780
RMTTRAIL 目标端存放trail文件的路径
EXTTRAIL 本地存放trail文件的路径
SQLEXEC 在EXTRACT进程运行前先指定特定SQL
PASSTHRU 禁止EXTRACT进程与数据库交互,但源端与目标端objects必须一致
REPORT 定义自动定时报告
STATOPTIONS 定义stat统计时是否需要重置
REPORTCOUNT 报告已处理的记录数
TLTRACE 打开对于数据库日志的跟踪日志
DISCARDFILE 指定discardfile文件位置,将错误信息输出到此文件,通常放在dirrpt目录下
DBOPTIONS 针对数据库的特殊参数
TRANLOGOPTIONS 针对事务日志的特定参数,例如在配置双向同步时指定TRANLOGOPTIONS EXCLUDEUSER OGG 过滤OGG用户提交的事务
WARNLONGTRANS 将长事务告警写入错误日志,例如:warnlongtrans 4h,checkinterval 10m 表示10分钟检查一次,超过四小时的长事务记录到错误日志中

replicat进程参数

参数 说明
ASSUMETARGETDEFS 表示源端与目标端数据结构一致
SOURCEDEFS 两端数据结构不一致时,指定源数据结构,配置defgen文件使用,一般用于异构数据库同步
MAP,TARGET 表示源端与目标端数据结构一致
ASSUMETARGETDEFS 指定源端与目标端同步表的映射关系,例如:MAP TEST01.TAB1,TARGET TEST02.TAB2.

另外还支持定义过滤条件的参数结合使用,例如FILTER,WHERE,KEYCOLS,COLMAP
FILTER: 常用在使用Data Pump方式新增同步表时指定单表的起始SCN,例如:filter ( @getenv('TRANSACTION', 'CSN') > 9490772077906);
WHERE: 与FILTER不同的地方是FILTER只用于比较NUMBER类型,而WHERE则支持其它类型,例如:where (info_status = "9" );
KEYCOLS: 当同步表不存在主键或唯一键时,同步可能会遇到OGG-00869的错误,这时可以通过KEYCOLS指定一个或多个字段作为主键
COLMAP: 用于列映射,通常用于字段名不同,转换,插入常量等情况。例如:COLMAP(USEDEFAULTS,ID1=ID2,TIME=@DATENNOW());USEDEFAULTS表示字段名相同的自动匹配
MAPEXCLUDE 排除指定表
REPERROR 定义进程碰到错误时的处理方式,一般分为两种方式:ABEND和DISCARD。ABEND表示停止复制,DISCARD表示继续复制并把错误记录到DISCARD文件中,默认为ABEND
DISCARDFILE 指定DISCARDFILE文件的位置,将错误信息输出到此文件,通常放在dirrpt目录下
SQLEXEC 在Replicat进程运行前先执行特定SQL
GROUPTRANSOPS 把小事务合并成大事务进行提交,减少提交次数
MAXTRANSOPS 拆分大事务,指定多少条记录提交一次
comments powered by Disqus