0

我的 *.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。Replicat 是使用没有目标数据库的 Java 处理程序创建的,因此这种长度不匹配没有问题。

复制品在此记录处停止异常,不会让步。RPT 文件中的以下选项没有帮助:

reperror 01163, ignore

因为这仅适用于 Oracle DB 错误。

请帮忙!

4

1 回答 1

1

解决方案。在源数据库上生成源定义文件:

$ ./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 选项是必需的。否则将使用来自跟踪文件的元数据。

启动副本,它现在必须工作。复制所有待处理数据后,重新启动源数据库上的 EXTRACT。之后,可以从 REPLICAT PRM 文件中删除 SOURCEDEFS 参数。不要忘记重新启动 REPLICAT 进程。

于 2019-10-04T11:34:03.657 回答