我的* .rpt文件中有一个错误:
2019-09-26 17:58:56 ERROR OGG-01163 Bad column length (56) specified for column AUTHORISATION_ID in table TCPF.OPERATION, maximum allowable length is 40
开始提取时,列长度为40。然后扩展到200。DDL不复制。复制是使用没有目标数据库的Java处理程序创建的,因此长度不匹配不会造成任何问题。
此复制品在此记录处停止中止,不会退让。 RPT文件中的以下选项无济于事:
reperror 01163, ignore
这仅适用于Oracle DB错误。
请帮助!
答案 0 :(得分:0)
解决方案。在源数据库上生成源定义文件:
$ ./defgen paramfile dirprm/myschema.prm
myschema.prm
CHARSET UTF-8
DEFSFILE dirprm/myschema.def purge CHARSET UTF-8 FORMAT RELEASE 12.3
userid ***, password ***
NOCATALOG
table MYSCHEMA.*;
将def文件复制到目标服务器,并在复制的PRM文件中添加以下行:
SOURCEDEFS dirprm/myschema.def OVERRIDE
请注意,OVERRIDE选项是必需的。否则,将使用跟踪文件中的元数据。
启动复制副本,它现在必须可以工作。复制所有未决数据后,重新启动源DB上的EXTRACT。之后,可以从REPLICAT PRM文件中删除SOURCEDEFS参数。不要忘记重启REPLICAT进程。