本帖最后由 oracledba021 于 2012-3-6 18:41 编辑
前几天帮助客户做了一次数据库导出,导出语句如下:
EXPDP SYSTEM/PASSWORD DIRECTORY=DUMP DUMPFILE=CRM20.DMP LOGFILE=CRM20_EXPDP.LOG SCHEMAS=CRM20
导出是成功的。
导完后丢给了客户,因为他们建了一个测试库,需要这个用户的数据。
但是,过了几天客户反映导入报错,如下:
ORA-39083: 对象类型 INDEX_STATISTICS 创建失败, 出现错误:
ORA-01403: 未找到数据
ORA-01403: 未找到数据
失败的 sql 为:
DECLARE IND_NAME VARCHAR2(60); IND_OWNER VARCHAR2(60); BEGIN DELETE FROM "SYS"."IMPDP_STATS"; SELECT index_name, index_owner INTO IND_NAME, IND_OWNER
FROM (SELECT UNIQUE sgc1.index_name, sgc1.index_owner,
COUNT(*) mycount
FROM sys.ku$_find_sgc_view sgc1,
TABLE (sgc1.col_list) mycol
跑过去一看,其导入的数据库版本是10.2.0.1 for windows2003 64bit,但是我导出的数据库版本是10.2.0.4 for RHEL AS 5 64bit,便轻率地下了一个结论:数据库版本差异导致了这个问题。
以为客户换个版本的数据库就完了,正常了。结果客户在10.2.0.4 for AIX5 64bit上问题依旧。
懵了!
开始认真对待---因为客户也认真了!
网上搜了几个帖子,没什么帮助。关键时刻,还得metalink出击!
于是,怀着试试看的态度,在metalink上搜了一把,收获真大了去了---BUG:6156708!
有种说不出来的喜悦,可以给客户交代了,在给客户交代之前,说下这个BUG:6156708:
#############################################################################
Applies to:Oracle Server - Enterprise Edition - Version: 10.2.0.3 to 11.1.0.6 - Release: 10.2 to 11.1
Information in this document applies to any platform.
SymptomsA DataPump import using the parameter REMAP_SCHEMA reports errors ORA-39083 and ORA-1403 while importing index statistics:
ORA-39083: Object type INDEX_STATISTICS failed to create with error:
ORA-01403: no data found
ORA-01403: no data found
Failing sql is:
DECLARE IND_NAME VARCHAR2(60); IND_OWNER VARCHAR2(60); BEGIN DELETE FROM
"SYS"."IMPDP_STATS"; SELECT index_name, index_owner INTO IND_NAME, IND_OWNER
FROM (SELECT UNIQUE sgc1.index_name, sgc1.index_owner,
COUNT(*) mycount
FROM sys.ku$_find_sgc_view sgc1,
TABLE (sgc1.col_list) myc
CauseHere are the steps to reproduce the issue:
1. Create a table