oracle导入错误

时间:2012-06-05 06:47:44

标签: oracle import oracle11g

将转储文件导入oracle 11gr2时,我收到此错误,请提示解决此问题的方法

*Warning: the objects were exported by D7IDMP, not by you
import done in WE8MSWIN1252 character set and AL16UTF16 NCHAR character set
export client uses WE8ISO8859P1 character set (possible charset conversion)
. importing D7IDMP's objects into MIGRATE
. . importing table                    "TXALLTXTS"     245628 rows imported
. . importing table                       "TXAUTH"        377 rows imported
. . importing table                    "TXBAIMERT"        244 rows imported
. . importing table                     "TXBARESC"        178 rows imported
. . importing table                     "TXBOILER"     458940 rows imported
. . importing table                    "TXCLASSES"        980 rows imported
. . importing table              "TXCLOSEDPERIODS"          1 rows imported
. . importing table                  "TXCOMPANIES"          1 rows imported
. . importing table                 "TXCONCLAUSES"        187 rows imported
IMP-00017: following statement failed with ORACLE error 959:
 "CREATE TABLE "TXCONFIGSETTINGS" ("CFS_CODE" VARCHAR2(20), "CFS_RCODE" VARCHAR2(2"
 "0))  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 STORAGE(INITIAL 16384 FR"
 "EELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "MP5TEXT" LOGGI"
 "NG NOCOMPRESS LOB ("CFS_XMLCONFIG") STORE AS  (TABLESPACE "MP5TEXT" ENABLE "
 "STORAGE IN ROW CHUNK 8192 PCTVERSION 10 NOCACHE  STORAGE(INITIAL 65536 FREE"
 "LISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT))"
IMP-00003: ORACLE error 959 encountered
ORA-00959: tablespace 'MP5TEXT' does not exist*

根据alex评论,我尝试使用imp的其他属性但是它导致了另一个错误

我运行的命令是

imp fromuser=d7idmp touser=&&from_user file=test.dmp log= test.log ignore=y transport_tablespace = y tablespaces = MP5TEXT

错误是

在WE8MSWIN1252字符集和AL16UTF16 NCHAR中完成导入  字符集导出客户端使用WE8ISO8859P1字符集(可能  字符集转换)IMP-00053:导入模式与Export不兼容  转储文件IMP-00000:导入终止失败

2 个答案:

答案 0 :(得分:8)

如果您能够使用数据泵而不是旧的imp / exp工具,则可以动态重新映射表空间(以及其他内容)。

如果没有,处理此问题的常用方法是在新表空间中手动创建表,然后使用imp运行ignore=y,这样就不会抱怨该对象存在。

通过使用imp运行indexfile=<file>,您可以使用旧表空间获取表的DDL。这将为您提供一个带有表和索引的DDL的文本文件,但是使用rem注释掉的表命令。您可以提取所需的位,并根据新数据库的需要对其进行编辑。

如果您还没有,请查看文档中的import parameters

答案 1 :(得分:3)

您需要创建表空间MP5TEXT。导入实用程序需要源数据库中存在的相同表空间来导入表。