Oracle导入.dmp文件表空间不存在

Oracle导入.dmp文件表空间不存在
  • 背景:在自己的本地库导入leader发来的.dmp文件。

  • 问题:导入时遇到“表newdc空间不存在” 部分数据导入失败

  • 解决方式:数据库清空后创建表空间再重新导入

    • 记录错误日志中不存在的表空间,清空导入失败的有损用户表数据,两钟方式。

      • 删除用户再重建执行法

        SQL drop user XXX cascade; 
        

        或者在Users表中删除新建,注意删除用户时关闭其占用进程。(可能需要登陆system/sys用户才有删除用户的权限)

      • 如下查询出当前用户的所有表后将结果执行法

        select 'drop table '||table_name||';'  from all_tables where owner='用户名';
        
    • 登录系统用户system/sys创建记录的不存在的表空间,下面以“newdc”为例。

      create tablespace newdc
      datafile 'F:\environment\oracle\newdc.dbf' size 500M--修改为oracle安装路径,表空间.dbf文件不在oracle安装路径下可能会报错
      autoextend on next 100M maxsize unlimited logging 
      extent management local autoallocate
      segment space management auto;
      
    • 新建用户,分配表空间与权限。

      create user admin --创建用户名
      identified by "admin" --创建密码
      default tablespace newdc--默认表空间
      temporary tablespace TEMP; --临时表空间(默认的)
      
      grant connect, resource to admin; 
      grant dba to admin
      

      或者采用PL/SQL等工具的新建用户Oracle数据库建库和分用户流程-CSDN博客

      其中的Default tablespace 默认表空间 Temporary tablespace临时表空间。

      上一步未删除用户则更改其默认表空间即可: admin用户 newdc新默认表空间

      alter user admin default tablespace newdc;
      
    • 执行导入Impdp命令,此命令需要在cmd中执行。

      • 命令行执行Impdp命令方式:

        Impdp admin/admin@192.168.x.x:1521/ORCL DIRECTORY=DATA_PUMP_DIR DUMPFILE=xxx.DMP SCHEMAS=admin
        

        img

      • PL/SQL工具导入的Oracle Import方式

        请添加图片描述

        选择dmp文件导入即可。

本文部分参考如下Oracle使用Impdp导入dmp文件的详细过程 - 悠悠南山下 - 博客园 (cnblogs.com)

  • 19
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值