imp导入数据库错误

fly_miss 2004-08-20 09:34:13
初学Oracle,别人给的4g的数据库要导入到Oracle9i中
我新建一个用户后,zsoft/zsoft,授权给它dba后导入数据库发生以下错误
导入数据库的语句为:
imp zsoft/zsoft@com file=e:\bak.dmp full=y ignore=y buffer=99999999

发生以下错误:
警告: 此对象由 RKXX 导出, 而不是当前用户

已经完成ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的导入
导出服务器使用ZHS16GBK NCHAR 字符集 (可能的ncharset转换)
. 正在将RKXX的对象导入到 ZSOFT
. . 正在导入表 "W_DJB" 216990行被导入
IMP-00017: 由于 ORACLE 的 959 错误,以下的语句失败
"CREATE TABLE "W_ZP" ("SFZ" VARCHAR2(18), "XM" VARCHAR2(30), "ZP" BLOB) PCT"
"FREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 LOGGING STORAGE(INITIAL 26255360"
" NEXT 13090816 MINEXTENTS 1 MAXEXTENTS 505 PCTINCREASE 50 FREELISTS 1 FREEL"
"IST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "RKXX_DATA" LOB ("ZP") STORE A"
"S (TABLESPACE "RKXX_DATA" ENABLE STORAGE IN ROW CHUNK 8192 PCTVERSION 10 N"
"OCACHE STORAGE(INITIAL 40960 NEXT 40960 MINEXTENTS 1 MAXEXTENTS 505 PCTINC"
"REASE 50 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT))"
IMP-00003: 遇到 ORACLE 错误 959
ORA-00959: 表空间'RKXX_DATA'不存在

请问如何导下去
...全文
337 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
ineedtostudy 2004-09-02
  • 打赏
  • 举报
回复
最好建立和原来同名的表空间。
用户名可以不同,参见 freddy2003()
shouhuzhe 2004-09-02
  • 打赏
  • 举报
回复
FROMUSER 所有人用户名列表
TOUSER 用户名列表
cycy80 2004-09-02
  • 打赏
  • 举报
回复
我也试过,如果表空间与原来的不一致,那么它也提示导入成功。但是在方案中却找不到导入的表,是什么原因
freddy2003 2004-09-02
  • 打赏
  • 举报
回复
如果用户不相同,你可以用
imp zsoft/zsoft@com file=e:\bak.dmp fromuser=原来用户 touser=zsoft buffer=99999999
zwj0712 2004-09-02
  • 打赏
  • 举报
回复
你新建的用户最好指向的表空间与原来的相同!!!还有你的角色权限也给足试试!!!
drabit 2004-09-02
  • 打赏
  • 举报
回复
不一定要相同的表空间,但是那个表空间必须在系统中存在
dannyHe79 2004-09-02
  • 打赏
  • 举报
回复
一定要用相同的表空间吗?表空间不同,但用户名相同可不可以?
biliky 2004-09-02
  • 打赏
  • 举报
回复
up : freddy2003()
dejkstro 2004-09-02
  • 打赏
  • 举报
回复
另外你可以先建立同名表空间,把数据完整导入。再用move命令移动table W_ZP 到你想要的表空间。
dejkstro 2004-09-02
  • 打赏
  • 举报
回复
还有一点原因是 ZP 字段是 blob的 oracle的所有的lob(blob,clob等)字段都是直接与表空间关联的。必须有blob关联的表空间才能正常导入;如果表中不含lob子段则能正常导入。
如果你要导的别的表空间含有lob字段的表是要重新建的。不知道对你有没有帮助。
summerain 2004-08-23
  • 打赏
  • 举报
回复
你要全库导入,除了要在导入前创建相同的表空间外,还需先执行如下操作:
imp system/manager inctype=system file=e:\bak.dmp
再接着执行:
imp system/manager inctype=restore file=e:\bak.dmp
fly_miss 2004-08-20
  • 打赏
  • 举报
回复
请问一定要同名的用户的才能导入吗?
daihaidong 2004-08-20
  • 打赏
  • 举报
回复
别人给的数据有用户RKXX,新加一个同名用户
Torrice 2004-08-20
  • 打赏
  • 举报
回复
ORA-00959 tablespace 'string' does not exist

Cause: A statement specified the name of a tablespace that does not exist.

Action: Enter the name of an existing tablespace. For a list of tablespace names, query the data dictionary

呵呵,建同名表空间,并在改表空间上建zsoft用户
drabit 2004-08-20
  • 打赏
  • 举报
回复
《〈ORA-00959: 表空间'RKXX_DATA'不存在〉》

这才是真正的错误!,先建好表空间。

楼上的解答不知所云


chao778899 2004-08-20
  • 打赏
  • 举报
回复
新建一个同名的表空间就可以了,不必非要原来的用户
xuelee 2004-08-20
  • 打赏
  • 举报
回复
imp system/manager@com file=e:\bak.dmp full=y ignore=y buffer=99999999
试试
youjunlin 2004-08-20
  • 打赏
  • 举报
回复
新建的用户和秘密可能要和你导的库的用户和秘密相同,你试试

17,377

社区成员

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

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