RSS订阅
RSS订阅TT数据库

Oracle错误:数据泵导出时报错ORA-1422(二)

2008-8-15  选择字号:  | |
打印本文章

导读:作者通过他同事在使用数据泵导出的时候碰到的ORA-1422这个错误在本文中对它进行了重现、分析以及提出了可行性的解决办法。

关键词:Oracle错误 ORA-1422 数据泵导出时报错ORA-1422

正在加载数据...


  ORA-31642: 以下 SQL 语句失败:

  BEGIN "SYS"."DBMS_SCHED_EXPORT_CALLOUTS".SCHEMA_CALLOUT(:1,1,1,’10.02.00.01.00’)

  ; END;

  ORA-06512: 在 "SYS.DBMS_SYS_ERROR", line 86

  ORA-06512: 在 "SYS.DBMS_METADATA", line 907

  ORA-01422: 实际返回的行数超出请求的行数

  ORA-06512: 在 "SYS.DBMS_SYS_ERROR", line 105

  ORA-06512: 在 "SYS.KUPW$WORKER", line 6241


 ----- PL/SQL Call Stack ----- 
  object line object 
  handle number name 
  2EBF7ED4 14916 package body SYS.KUPW$WORKER 
  2EBF7ED4 6300 package body SYS.KUPW$WORKER 
  2EBF7ED4 2340 package body SYS.KUPW$WORKER 
  2EBF7ED4 6861 package body SYS.KUPW$WORKER 
  2EBF7ED4 1262 package body SYS.KUPW$WORKER 
  2EBDBC80 2 anonymous block 

  作业 "YANGTK"."SYS_EXPORT_SCHEMA_01" 因致命错误于 00:26:43 停止

  导出过程中出现了ORA-1422错误,而这正是由于DUAL表中记录多于1条造成的结果。Oracle很多的工具和包都依赖于DUAL表,因此插入多余的记录就会导致这些工具出现异常情况:


SQL> delete DUAL; 


  已删除 1 行。


SQL> COMMIT; 


  提交完成。


SQL> select * FROM DUAL; 
  D 
  - 
  X 

  下面重新执行导出问题解决:

  E:>expdp yangtk/yangtk@ytk102 directory=d_output dumpfile=yangtk.dp

  Export: Release 10.2.0.1.0 - Production on 星期三, 13 8月, 2008 0:37:31

  Copyright (c) 2003, 2005, Oracle. All rights reserved.

  连接到:

Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production 
  With the Partitioning, OLAP and Data Mining options启动 "YANGTK"."SYS_EXPORT_SCHEMA_02": yangtk/********@ytk102 directory=d_output 
  dumpfile=yangtk.dp正在使用 BLOCKS 方法进行估计...处理对象类型 SCHEMA_EXPORT/TABLE/TABLE_DATA使用 BLOCKS 方法的总估计: 1.812 MB处理对象类型 SCHEMA_EXPORT/USER处理对象类型 SCHEMA_EXPORT/SYSTEM_GRANT处理对象类型 SCHEMA_EXPORT/ROLE_GRANT处理对象类型 SCHEMA_EXPORT/DEFAULT_ROLE处理对象类型 SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA处理对象类型 SCHEMA_EXPORT/TYPE/TYPE_SPEC处理对象类型 SCHEMA_EXPORT/DB_LINK处理对象类型 SCHEMA_EXPORT/SEQUENCE/SEQUENCE处理对象类型 SCHEMA_EXPORT/TABLE/TABLE处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/INDEX处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS处理对象类型 SCHEMA_EXPORT/TABLE/COMMENT处理对象类型 SCHEMA_EXPORT/PACKAGE/PACKAGE_SPEC处理对象类型 SCHEMA_EXPORT/FUNCTION/FUNCTION处理对象类型 SCHEMA_EXPORT/PROCEDURE/PROCEDURE处理对象类型 SCHEMA_EXPORT/PACKAGE/COMPILE_PACKAGE/PACKAGE_SPEC/alter_PACKAGE_SP 
  EC处理对象类型 SCHEMA_EXPORT/FUNCTION/alter_FUNCTION处理对象类型 SCHEMA_EXPORT/PROCEDURE/alter_PROCEDURE处理对象类型 SCHEMA_EXPORT/PACKAGE/PACKAGE_BODY处理对象类型 SCHEMA_EXPORT/TYPE/TYPE_BODY处理对象类型 SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS 

  . . 导出了 "YANGTK"."T_RECORD" 473.9 KB 40000 行

  . . 导出了 "YANGTK"."SYS_EXPORT_SCHEMA_01" 227.9 KB 1169 行

  . . 导出了 "YANGTK"."TEST_LOB" 5.656 KB 1 行

  . . 导出了 "YANGTK"."CHAINED_ROWS" 81.25 KB 2118 行

  . . 导出了 "YANGTK"."T" 4.906 KB 1 行

  . . 导出了 "YANGTK"."T_LEVEL" 6.234 KB 6 行

  . . 导出了 "YANGTK"."T_LEVEL1" 6.585 KB 8 行

  . . 导出了 "YANGTK"."T_LOAD_SPACE" 5.585 KB 5 行

  . . 导出了 "YANGTK"."T_LOG" 5.273 KB 2 行

  . . 导出了 "YANGTK"."T_NO_exists_BEFORE" 5.257 KB 1 行

  . . 导出了 "YANGTK"."T_TREE" 5.960 KB 9 行

  . . 导出了 "YANGTK"."T_char" 0 KB 0 行

  . . 导出了 "YANGTK"."T_COMPRESS" 0 KB 0 行已成功加载/卸载了主表 "YANGTK"."SYS_EXPORT_SCHEMA_02"

  ******************************************************************************

  YANGTK.SYS_EXPORT_SCHEMA_02 的转储文件集为:

  E:YANGTK.DP作业 "YANGTK"."SYS_EXPORT_SCHEMA_02" 已于 00:37:51 成功完成


Oracle错误:数据泵导出时报错ORA-1422
 Oracle错误:数据泵导出时报错ORA-1422(一)
 Oracle错误:数据泵导出时报错ORA-1422(二)

原文出处:http://space.itpub.net/batch.viewlink.php?itemid=369993
来源:BLOG    作者:杨廷琨    
我怎么从Oracle数据库中获取修正的历史数据?答:对数据修正之后,你可以用Oracle的Log Miner工具挖掘重做日志。修正之前你可以创建审计记录变化……
我们用的是Oracle 10g数据库,但是偶尔它也会提示出现ORA-03113错误。目前我们用一个科学应用程序在vb.net应用中查询时间序列数据,能成功获取查询的一些参数……
昨天,客户的一套Oracle 10.2.0.3 RAC环境遇到了一个严重故障,数据库最后以ORA-600 [2103]错误中止了一个实例。日志信息大致如下……
遇到ORA-06552错误怎么办?我们该怎么解决这个错误?作者后来搜到了未公开的INTERNAL_USE用法,强制完成字符集一致化,解决了问题。
在用rman target和用sys用户登陆时出现错误:ORA-01031: insufficient privileges C:\Documents and Settings\mengzhaoliang>rman target/,怎么解决?

本专题介绍了SQL Server服务代理相关方面的知识,包括SQL Server服务代理基础知识的概述、消息类型、契约、队列、服务和路由、SEND命令和RECEIVE命令、性能方面的改进以及对运行状况的监控等等。

无论你是否计划将SQL Server数据库转换服务(DTS)包迁移到SQL Server集成服务(SSIS)或在SQL Server 2005里运行DTS包,都需要专家的一些建议。这一指南主要是包括SSIS的相关基础知识、技巧帮助你进行SSIS调整,还介绍了SSIS有经验的一些用户的具体信息等等。

子查询是一个嵌套在SELECT、INSERT、UPDATE 或DELETE语句,或者另一个子查询里的查询。一个子查询可以返回一行或多行结果给父查询。标量子查询是只返回一个值的查询:只有一个字段的一行记录。标量子查询可以在SQL语句的大多数位置,其中你可以使用一个表达式或一个实际值。
最新更新
专家答疑
技巧
Michael Hillenbrand
你能解释一下数据库公程师、数据库架构师以及数据库管理员之间有什么区别吗?数据库管理员:这是目前最普遍使用的对从事数据库相关的工作的人的头衔。数据库管理员是指……
Brian Peasland
对5GB大小的Oracle 7.3存档或删除的最佳办法是什么?为了便于管理机构查询,这些数据至少需要再用20年的时间。我们担心将来我们不能对它重新获取并迁入一个更新的……
Rudy Limeback
如何创建一个约束限制2007年1月1日之前的日期被录入?用CHECK约束就可以。如下面的示例……