Oracle错误——tablespace 'XXXX' does not exist

错误

  • 在使用IMP命令导入Oracle数据的时候,因为导出数据的数据库表空间和导入数据的数据库表空间不同,导致导入数据失败,出现:tablespace 'XXXX' does not exist
  • 在网上找了很多教程,说是使用IMP命令指定表空间,试过之后没有产生作用,只好另想他法。
  • Next

解决办法

  • 思路:将导入数据的数据库表空间修改为和数据相匹配的名称,将数据导入之后,再将表空间名称修改过来。
  • 步骤
    • 以(导入数据库表空间名称:ZHB2;数据源表空间名称:HNQY_DATA)为例。
    • 查看导入数据库的表空间名称
      SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size 
      FROM dba_tablespaces t, dba_data_files d 
      WHERE t.tablespace_name = d.tablespace_name 
      GROUP BY t.tablespace_name;  
    • 记下表空间名称!!!
      • 当前表空间名称为:ZHB2
      • 修改的表空间名称为:HNQY_DATA
    • 修改表空间名称
      alter tablespace  ZHB2 rename to HNQY_DATA;
    • 导入数据
      imp HNQY/HNQY@ORCL file='/home/oracle/HNQS0607.dmp' fromuser=HNQY touser=cz_zcgl  ignore=y;
    • 将表空间修改回ZHB2
      alter tablespace  HNQY_DATA rename to ZHB2;
    • Next
posted @   话·醉月  阅读(8838)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
点击右上角即可分享
微信分享提示