ITPub博客

首页 > 数据库 > Oracle > impdp报错ORA-39083、ORA-14063

impdp报错ORA-39083、ORA-14063

原创 Oracle 作者:Hoegh 时间:2015-11-04 11:49:08 0 删除 编辑
    今天使用impdp实施数据导入时遭遇ORA-39083、ORA-14063报错,如下所示:

点击(此处)折叠或打开

  1. C:\Users\Administrator>impdp HOEGH/HOEGH123 directory=data_pump_directory dumpfile=20151104static.dmp remap_schema=SOURCEDB:HOEGH remap_tablespace=SOURCEDBstatic:HOEGHstatic

  2. Import: Release 10.2.0.4.0 - 64bit Production on 星期三, 04 11月, 2015 10:53:22

  3. Copyright (c) 2003, 2007, Oracle. All rights reserved.

  4. 连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
  5. With the Partitioning, OLAP, Data Mining and Real Application Testing options
  6. 已成功加载/卸载了主表 "HOEGH"."SYS_IMPORT_FULL_01"
  7. 启动 "HOEGH"."SYS_IMPORT_FULL_01": HOEGH/******** directory=data_pump_directory dumpfile=20151104static.dmp remap_schema=SOURCEDB:HOEGH remap_tablespace=SOURCEDBstatic:HOEGHstatic
  8. 处理对象类型 TABLE_EXPORT/TABLE/TABLE
  9. 处理对象类型 TABLE_EXPORT/TABLE/TABLE_DATA
  10. . . . . (此处省略若干字)
  11. . . 导入了 "HOEGH"."HOEGH" 7.562 KB 8 行
  12. . . . . (此处省略若干字)
  13. 处理对象类型 TABLE_EXPORT/TABLE/INDEX/INDEX
  14. 处理对象类型 TABLE_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
  15. ORA-39083: 对象类型 CONSTRAINT 创建失败, 出现错误:
  16. ORA-14063: 唯一/主约束条件关键字中存在无用索引
  17. 失败的 sql 为:
  18. ALTER TABLE "HOEGH"."HOEGH" ADD CONSTRAINT "PK_HOEGH" PRIMARY KEY ("CODE") USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "SOURCEDB"
  19. 处理对象类型 TABLE_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
  20. 处理对象类型 TABLE_EXPORT/TABLE/COMMENT
  21. 处理对象类型 TABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
  22. 作业 "HOEGH"."SYS_IMPORT_FULL_01" 已经完成, 但是有 1 个错误 (于 10:53:36 完成)
    根据经验判断,ORA-14063是问题的关键所在,因此需要查询user_indexes来确认HOEGH表上的索引状态是否有异常,如下所示:

点击(此处)折叠或打开

  1. SQL>
  2. SQL> select index_name,status from user_indexes where table_name='HOEGH';

  3. INDEX_NAME STATUS
  4. ------------------------------ --------
  5. PK_HOEGH UNUSABLE
  6. SYS_IL0000075416C00003$$ VALID
    果然,HOEGH标的主键状态为UNUSABLE,重新编译一下应该就没问题了。

点击(此处)折叠或打开

  1. SQL>
  2. SQL> alter index PK_HOEGH rebuild;

  3. 索引已更改。

  4. SQL>
  5. SQL> select index_name,status from user_indexes where table_name='HOEGH';

  6. INDEX_NAME STATUS
  7. ------------------------------ --------
  8. PK_HOEGH VALID
  9. SYS_IL0000075416C00003$$ VALID

  10. SQL>
    接下来,我们使用expdp工具重新导出数据,然后再次执行上述impdp操作,报错解除。

点击(此处)折叠或打开

  1. C:\Users\Administrator>impdp HOEGH/HOEGH123 directory=data_pump_directory dumpfile=20151104static.dmp remap_schema=SOURCEDB:HOEGH remap_tablespace=SOURCEDBstatic:HOEGHstatic

  2. Import: Release 10.2.0.4.0 - 64bit Production on 星期三, 04 11月, 2015 11:20:06

  3. Copyright (c) 2003, 2007, Oracle. All rights reserved.

  4. 连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
  5. With the Partitioning, OLAP, Data Mining and Real Application Testing options
  6. 已成功加载/卸载了主表 "HOEGH"."SYS_IMPORT_FULL_01"
  7. 启动 "HOEGH"."SYS_IMPORT_FULL_01": HOEGH/******** directory=data_pump_directory dumpfile=20151104static.dmp remap_schema=SOURCEDB:HOEGH remap_tablespace=SOURCEDBstatic:HOEGHstatic
  8. 处理对象类型 TABLE_EXPORT/TABLE/TABLE
  9. 处理对象类型 TABLE_EXPORT/TABLE/TABLE_DATA
  10. . . . . (此处省略若干字)
  11. . . 导入了 "HOEGH"."HOEGH" 7.562 KB 8 行
  12. . . . . (此处省略若干字)
  13. 处理对象类型 TABLE_EXPORT/TABLE/INDEX/INDEX
  14. 处理对象类型 TABLE_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
  15. 处理对象类型 TABLE_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
  16. 处理对象类型 TABLE_EXPORT/TABLE/COMMENT
  17. 处理对象类型 TABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
  18. 作业 "HOEGH"."SYS_IMPORT_FULL_01" 已于 11:20:19 成功完成

hoegh
15.11.4
-- The End --

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30162081/viewspace-1822227/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 获取建表DDL语句
请登录后发表评论 登录
全部评论

注册时间:2015-03-13

  • 博文量
    132
  • 访问量
    2219919