1.7 Oracle 11g )impdp(数据泵)--导入dmp文件(全过程) > 我的程序猿之路:第七章

假如:

Oracle 用户限制-->只能用cxdb

表空间 限制-->只能用farmdoab

目录-->自己创建,目录名随意

文件名:CXDB518.DMP

----------------------------------------

首要工作:打开CMD命令窗口,sqlplus,输入用户名:system   密码:      

第一步:创建表空间

    create tablespace farmdoab datafile 'D:dzzwpt.dbf' size 100M autoextend on next 50m;

第二步:创建目录

    create or replace directory dp_dir as 'C: ockup';

        PS:把要导入的DMP文件放入目录下。

第三步:创建用户,并指定默认的表空间

    create user cxdb identified by root default tablespace farmdoab;

    --》》(删除用户:drop user iteye cascade;)

第四步:授权

    4.1:授权dba权限:grant connect, dba to cxdb;

    4.2:授权用户cxdb读写目录文件: grant read, write on directory dp_dir to cxdb;

第五步:导入DMP文件

    impdp cxdb/root@orcl directory=dp_dir dumpfile=cxdb518.dmp logfile=emp.log full=y;

        PS:lodfile可以不加,不加系统自动创建。

----------------警示:这样并不一定就OK了,报错是常事,把心静下来解决--------------------------------------------

      注意事项:

              1.要确定这个.DMP文件是expdp导出的还是exp导出的,exp导出的文件上面导入方法不好使

              2.要确定导出的数据库版本和自己的数据库版本是否相同或不同,低版本到高版本+version=你的数据库版本

              3.一定把要导入的DMP文件放入要导入的目录下,不然系统找不到

              4.导入DMP文件的dumpfile的路径直接写文件名字.DMP。因为前面目录directory已有

              5.就这么多,以后找到问题再补充

-----------------------------基于上面文件的查询sql语句------------------------------------------

    1.查询表空间

        1.1 查所有表空间

        select * from dba_tablespacer t;

        1.2 只查表空间名称:

        select tablespace_name from dba_tablespaces;

        也可以进Oracle点击TABLESPACE里面看。

    2.查询目录

        select * from dba_directories;

        也可以进Oracle点击DIRECTORY里面看.点击右键properties可以看到目录路径

    3.查看当前数据库版本号

       select * from v$version;

   

原文地址:https://www.cnblogs.com/fanyuyi-boke/p/qiao_duo_shao_nian_dai_ma_neng_ba_shou_zhi_mo_ping7.html