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 | 拆分大事务,指定多少条记录提交一次 |