php oracle817,从Oracle817导入到Oracle10.2.0.4过程中发生的错误及解决办法

这个错误,有点喜剧了,经过oracle817和oracle10g同一个表的表结构对比,发现oracle10g有这个外键,而且好像比oracle817的要好。

1、错误1:RBS和TEMP表空间无法创建。

IMP-00017: following statement failed with Oracle error 1119:

"CREATE TABLESPACE "RBS" DATAFILE 'D:\ORACLE\ORADATA\ORCL\RBS01.DBF' SIZE 5"

"45259520 AUTOEXTEND ON NEXT 5242880 MAXSIZE 16383M DEFAULT STORAGE("

"INITIAL 524288 NEXT 524288 MINEXTENTS 8 MAXEXTENTS 4096 PCTINCREASE 50) ONL"

"INE PERMANENT "

IMP-00003: ORACLE error 1119 encountered

ORA-01119: error in creating database file 'D:\ORACLE\ORADATA\ORCL\RBS01.DBF'

ORA-27040: file create error, unable to create file

OSD-04002: unable to open file

O/S-Error: (OS 3) 系统找不到指定的路径。

IMP-00017: following statement failed with ORACLE error 12913:

"CREATE TABLESPACE "TEMP" DATAFILE 'D:\ORACLE\ORADATA\ORCL\TEMP01.DBF' SIZE"

" 127270912 AUTOEXTEND ON NEXT 655360 MAXSIZE 16383M DEFAULT STORAGE"

"(INITIAL 65536 NEXT 65536 MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0)"

" ONLINE TEMPORARY "

IMP-00003: ORACLE error 12913 encountered

ORA-12913: Cannot create dictionary managed tablespace

RBS是oracle817的回滚段表空间,里面没有数据,到了10g,回滚段的办法已经改变了,使用的是UNDOTBS1表空间,已经创建,所以放弃。

TEMP是oracle817的临时表空间,也没有数据,而且10g的临时表空间不再使用字典管理模式,而是采用本地管理模式,这个过时了,所以放弃。

2、错误2:

IMP-00017: following statement failed with ORACLE error 3249:

"CREATE TABLESPACE "TOOLS" DATAFILE 'D:\ORACLE\ORADATA\ORCL\TOOLS01.DBF' SI"

"ZE 18481152 AUTOEXTEND ON NEXT 327680 MAXSIZE 16383M DEFAULT STORAG"

"E(INITIAL 32768 NEXT 32768 MINEXTENTS 1 MAXEXTENTS 4096 PCTINCREASE 0) ONLI"

"NE PERMANENT "

IMP-00003: ORACLE error 3249 encountered

ORA-03249: Uniform. size for auto segment space managed tablespace should have atleast 5 blocks

TOOLS是oracle817的工具表空间,主要是管理用户SYSTEM的默认表空间,在oracle817,我无法分析出TOOLS表空间内是否存放有数据对象,所以还是导入的为好,原因在于TOOLS表空间原先没有被创建,所以在导入的时候,导入程序认为要创建,,但是创建不成功,报错。

解决办法:在oracle10g创建表空间的语句中,添加TOOLS表空间创建。

3、错误3:

IMP-00017: following statement failed with ORACLE error 959:

"ALTER USER "SYSTEM" IDENTIFIED BY VALUES 'D4DF7931AB130E37' DEFAULT TABLESP"

"ACE "TOOLS" TEMPORARY TABLESPACE "TEMP""

IMP-00003: ORACLE error 959 encountered

ORA-00959: tablespace 'TOOLS' does not exist

这个错误,原因是oracle817默认的SYSTEM用户默认表空间在TOOLS中,所以在导入的时候,自然因为TOOLS表空间没有创建而失败。

解决办法:只要TOOLS表空间创建起来,自然错误就消失了。:

4、错误4:

IMP-00017: following statement failed with ORACLE error 1031:

"CREATE DATABASE LINK "DATA_LINK.WORLD" CONNECT TO "DATA" IDENTIFIED BY "DATA" "

"USING 'ora7'"

IMP-00003: ORACLE error 1031 encountered

ORA-01031: insufficient privileges

我导入使用的是SYSTEM用户,好像是因为SYSTEM用户权限不够,不过因为这个没有用了,所以放弃创建,以后要用的话,可以再单独创建,就可以了。

5、错误5:这个才是这篇记录中最关键的一个,也是因为这个我才写这篇记录的,因为有时候,可能难以理解。

IMP-00017: following statement failed with ORACLE error 20005:

"DECLARE SREC DBMS_STATS.STATREC; BEGIN SREC.MINVAL := NULL; SREC.MAXVAL :="

" NULL; SREC.EAVS := 0; SREC.CHVALS := NULL; SREC.NOVALS := DBMS_STATS.NUMAR"

"RAY(0,0); SREC.BKVALS := DBMS_STATS.NUMARRAY(0,1); SREC.EPC := 2; DBMS_STAT"

"S.SET_COLUMN_STATS(NULL,'"DEF$_AQERROR"','"EXCEPTION_QUEUE"', NULL ,NULL,NU"

"LL,0,0,0,srec,0,2); END;"

IMP-00003: ORACLE error 20005 encountered

ORA-20005: object statistics are locked (stattype = ALL)

ORA-06512: at "SYS.DBMS_STATS", line 1610

ORA-06512: at "SYS.DBMS_STATS", line 2120

ORA-06512: at "SYS.DBMS_STATS", line 5010

ORA-06512: at line 1

这个错误有点蹊跷,主要错误是object statistics are locked (stattype=all),经过查询,发现这个错误发生的原因在于数据库统计信息。但是更深层次的原因,还不清楚。暂时理解的是,由于默认的导入策略是statistics=always,这个策略要求的是一定要导入原先的数据库统计信息,这个策略,还是觉得有点问题,数据库统计信息,由于是使用了新的数据库版本,原先的统计信息,基本上80%左右的统计信息应该是不正确的,所以为什么导入策略还要默认是statistics=always呢。所以,我的决定是不导入或者重新统计数据库统计信息。

解决办法 :imp 命令最后添加参数statistics=none,这个参数就是要求不导入或者重新计算数据库统计信息。

6、错误6:

IMP-00017: following statement failed with ORACLE error 2270:

"ALTER TABLE "DEF$_CALLDEST" ADD CONSTRAINT "DEF$_CALL_DESTINATION" FOREIGN "

"KEY ("DBLINK") REFERENCES "DEF$_DESTINATION" ("DBLINK") ENABLE NOVALIDATE"

IMP-00003: ORACLE error 2270 encountered

ORA-02270: no matching unique or primary key for this column-list

这个错误,有点喜剧了,经过oracle817和oracle10g同一个表的表结构对比,发现oracle10g有这个外键,而且好像比oracle817的要好。所以放弃了。

解决办法:忽视。

logo.gif

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值