之前在11g上目标段使用的参数文件如下:
replicat XXXX
SETENV(ORACLE_HOME='/u01/app/oracle/product/12c/oracle/12.1.0/db_1')
SETENV(ORACLE_SID='STAGE')
SETENV(NLS_LANG='SIMPLIFIED CHINESE_CHINA.ZHS16GBK')
USERID ggs@stage, PASSWORD ggs
ASSUMETARGETDEFS
ALLOWNOOPUPDATES
GETTRUNCATES
DDL INCLUDE OBJTYPE 'TABLE'
reperror default,discard
ddlerror 904,discard
ddlerror 2443,discard
ddlerror 955,discard
ddlerror 6564,discard
ddlerror 942,discard
discardfile /oradata/dirrpt/repsz.dsc,purge, append, megabytes 5000
map USER.*,target USER.*;
在迁移到12C数据库上后,无法启动,查看错误日志如下:
2015-12-17 09:53:35 WARNING OGG-10173 Oracle GoldenGate Delivery for Oracle, ODIT1A1.prm: (ODIT1A1.prm) line 38: Parsing error, option [insertallrecords] for parameter [map] has unrecognized value "OVERRIDEDUPS".
2015-12-17 09:53:35 WARNING OGG-10173 Oracle GoldenGate Delivery for Oracle, ODIT1A1.prm: (ODIT1A1.prm) line 31: Parsing error, option [insertallrecords] for parameter [map] has unrecognized value "OVERRIDEDUPS".
2015-12-17 09:53:35 ERROR OGG-10103 Oracle GoldenGate Delivery for Oracle, ODIT1A1.prm: (ODIT1A1.prm) line 16: Parsing error, value "5000" is out of legal range (1 - 4096) for [megabytes].
2015-12-17 09:53:35 ERROR OGG-10107 Oracle GoldenGate Delivery for Oracle, ODIT1A1.prm: (ODIT1A1.prm) line 16: Parsing error, parameter [append] conflicts with parameter [purge].
2015-12-17 09:53:35 ERROR OGG-10107 Oracle GoldenGate Delivery for Oracle, ODIT1A1.prm: (ODIT1A1.prm) line 16: Parsing error, parameter [purge] conflicts with parameter [append].
前面的不用关系,重点看最后3排,提示参数冲突,值过大,去掉append,调正大小为4000,如下:
discardfile /oradata/dirrpt/repsz.dsc,purge, megabytes 4000
再次启动OGG进程成功
总结:
在迁移的时候,注意参数的有效性,很多参数可能不同版本使用方法不同,因此不能照搬!!!