导入数据报错误ORA-01659

bzcnc 2009-12-14 12:25:11
SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit Production
PL/SQL Release 9.2.0.8.0 - Production
CORE 9.2.0.8.0 Production
TNS for Solaris: Version 9.2.0.8.0 - Production
NLSRTL Version 9.2.0.8.0 - Production

SQL>

SQL> alter tablespace rap add datafile '/dbdata4/ss/test02.dbf' size 30720m autoextend on;

Tablespace altered.

在客户端进行导入的时候,如下:

/oradata2/fenqutable>% imp test1/test1@ZS file=test.dmp

Import: Release 9.2.0.1.0 - Production on 星期五 12月 11 12:39:52 2009

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.


连接到: Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.8.0 - Production

经由常规路径导出由EXPORT:V08.01.07创建的文件
已经完成ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的导入
导出客户机使用UTF8字符集 (可能的字符集转换)
导出服务器使用UTF8 NCHAR 字符集 (可能的ncharset转换)
. 正在将RAP的对象导入到 RAP
IMP-00017: 由于 ORACLE 的 1659 错误,以下的语句失败
"CREATE TABLE "TEST" ("ID" NUMBER NOT NULL ENABLE, "BAD_TYPE" NUMBER(*,"
"0), "FLAG" NUMBER(*,0), "EVENT_TYPE" VARCHAR2(255) NOT NULL ENABLE, "SERVIC"
"E_ID" NUMBER NOT NULL ENABLE, "SERVICE_TYPE" VARCHAR2(255), "CREATED_T" DAT"
"E, "START_T" DATE, "END_T" DATE, "ACCOUNT_ID" NUMBER, "CHARGE_ID" NUMBER NO"
"T NULL ENABLE, "STATUS" NUMBER(*,0), "LOGIN" VARCHAR2(255), "DIAL_DOMAIN" V"
"ARCHAR2(255), "CONTRACT_NO" VARCHAR2(255), "BILL_CYCLE_ID" NUMBER, "DOWN_TY"
"PE" NUMBER(2, 0), "ICP_ACCOUNT_ID" NUMBER, "ITEMNAME" VARCHAR2(255), "CANCE"
"L_T" DATE, "RAW_START_T" DATE, "RAW_END_T" DATE, "REMARK01" VARCHAR2(255), "
""REMARK02" NUMBER, "REMARK03" NUMBER(*,0)) PCTFREE 10 PCTUSED 40 INITRANS "
"1 MAXTRANS 255 LOGGING TABLESPACE "RAP"
…… 语句很多,暂时省略了,然后就报错了:
IMP-00003: 遇到 ORACLE 错误 1659
ORA-01659: unable to allocate MINEXTENTS beyond 72 in tablespace RAP
成功终止导入,但出现警告。
/oradata2/fenqutable>%

出现这样的问题,我就使用alter tablespace rap add datafile 语句向表空间添加数据文件,如果文件很大就不会再报错,如果再遇到很大的数据文件就会还报错,现在我想问的是:既然创建表空间的时候,我设定了autoextend on了,并且磁盘空间有500多个G的空间,我想导入的总的数据文件的大小也不是非常大,最大的也就是300M,我不知道为什么还报错?
...全文
937 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wh62592855 2009-12-14
  • 打赏
  • 举报
回复
如果文件很大就不会再报错,如果再遇到很大的数据文件就会还报错


这句话是什么意思?
wh62592855 2009-12-14
  • 打赏
  • 举报
回复
ORA-01659: unable to allocate MINEXTENTS beyond string in tablespace string
Cause: Failed to find sufficient contiguous space to allocate MINEXTENTS for the segment being created.

Action: Use ALTER TABLESPACE ADD DATAFILE to add additional space to the tablespace or retry with smaller value for MINEXTENTS, NEXT or PCTINCREASE

sql_xeppp 2009-12-14
  • 打赏
  • 举报
回复
http://www.itpub.net/thread-883921-1-1.html
--参考



wh62592855 2009-12-14
  • 打赏
  • 举报
回复
只要保证你添加的数据文件比要导入的数据文件大
那么这个问题应该就不会发生了吧?
你可以试试
bzcnc 2009-12-14
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wh62592855 的回复:]
如果文件很大就不会再报错,如果再遇到很大的数据文件就会还报错


这句话是什么意思?
[/Quote]

我是指修改表空间,添加的数据文件很大,就不会报错,如果再遇到很大的数据文件需要导入,这样的错误还会出现

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧