ITPub博客

Oracle GoldenGate导致IMP出现ORACLE 32588错误

原创 作者:尛样儿 时间:2015-05-02 22:33:19 0 删除 编辑

    客户说在向实施GG之后的源库导入数据收到如下的报错:

    从这个报错可以看出,为表添加的ALL COLUMN等类型的补充日志导致数据导入失败。

    回想Oracle GoldenGate的实施步骤,在做以下操作时,Oracle GoldenGate会根据表的情况添加适当的补充日志:
ADD TRANDATA <USERNAME>.<TABLE_NAME>;
由于客户的数据库的某些表没有主键或唯一键标识表行的唯一性,所以Oracle GoldenGate自动的为这部分表添加了ALL COLUMN等类型的补充日志,用整个行来标识表行数据的唯一性,这是Oracle GoldenGate正常的行为。

参考Oracle对该错误的解释:
ORA-32588: supplemental logging attribute string exists 
Cause: specified supplemental logging attribute exits.
Action: retry the alter/create ddl after removing this supplemental logging attribute.

执行ALTER TABLE XXX DROP SUPPLEMENTAL LOG DATA (ALL) COLUMNS;等命令将表对应的补充日志删除之后再次尝试导入。

当然最好且最简单的办法是执行如下的GoldenGate命令准确的卸载表对应的补充日志:

GGSCI> DELETE TRANDATA <USERNAME>.<TABLE_NAME>;

--end--
请登录后发表评论 登录
全部评论
Oracle数据库管理员,Oracle数据库系统构架员;2012年7月出版《构建最高可用Oracle数据库系统:Oracle 11gR2 RAC管理、维护与性能优化》一书;Oracle 10g OCM。

注册时间:2010-01-05

  • 博文量
    461
  • 访问量
    5178484