oracle 数据库导入dmp文件

时间:2021-10-12 23:29:13

整体介绍:

              1.明确*.dmp导出方式

               2.建立存放数据的数据库

               3.建立数据库的表空间

               4.创建逻辑目录

               5.创建属于上述表空间的用户——因为我们将要导入的数据是用户来对数据进行访问

               6.将数据导入该用户名下数据库

一、确认*.dmp文件是使用何种方式导出

      一般使用cmd命令导出的*.dmp 文件有两种方式——Imp导出和 impdp 导出,imp是很早以前的导出方式,以趋近于淘汰,只是为了兼容才保留至今,而 impdp 相对于Imp多了dp——数据泵,impdp 方式效率高,——这里就为大家介绍针对于 impdp 导出的 dmp 文件的导入。


二、新建数据库——可选

        oracle11g安装后有默认的orcl数据库,如果只是学习或没有特殊的需要可不新建新的数据库,新建数据库后每次开机会启动两个数据库,消耗电脑资源。

         笔者新建了一个myorcl的数据库——可以到电脑开始菜单中找到和 Oracle - OraDb11g_home1 相同或类似的文件,在该文件下有一个文件夹——配置和移植工具,该文件夹下有很多实用的oracle数据库工具,其中可打开——Database Configuration Assistant.exe新建数据库,具体操作可以到网上查找资料。


三、在需要导入数据的库中新建表空间

       笔者在这里是用的数据库名为myorcl,操作界面全部在cmd中运行。

      打开cmd操作界面后键入如箭头所示指令,口令输入安装oracle时 的口令,一般为system,输入的口令不可见,输入后按回车即可开始创建表空间。

       oracle 数据库导入dmp文件

  1.创建用户之前要创建"临时表空间",若不创建则默认的临时表空间为temp。

  SQL> CREATE TEMPORARY TABLESPACE USER_01

         TEMPFILE 'E:\app\micheal\oradata\myoracl\USER_01.DBF'

         SIZE 32M

         AUTOEXTEND ON

         NEXT 32M MASIZE UNLIMITED

         EXTENT MANAGEMENT LOCAL;

 

 2.创建用户之前先要创建数据表空间,若没有创建则默认永久性表空间是system。

 SQL> CREATE TABLESPACE POCSIT

         LOGGING

         DATAFILE 'E:\app\micheal\oradata\myoracl\POCSIT.DBF'

         SIZE 32M

         AUTOEXTEND ON

         NEXT 32M MAXSIZE UNLIMITED

         EXTENT MANAGEMENT LOCAL;


   注:一般原导出的数据拥有几个表空间,就要创建几个数据表空间,且和原来的表空间名字要一致。

四、创建逻辑目录(最好以system等管理员创建)

 SQL>create directory dpdata as 'E:\';

oracle 数据库导入dmp文件


五、创建用户并授权

      注:如源数据为整个数据库的数据,用户名要和原导出数据的用户名一致,笔者亲试

    1.第三步建好了名为'POCSIT'的表空间,在该空间下建立用户:

        其格式为:格式:  create user  用户名 identified by 密码  default tablespace 表空间表;

       如:

       SQL> create user pocsit identified by pocsit default tablespace pocsit;

       默认表空间'default tablespace'使用上面创建的表空间。源文件有多个表空间的情况,只要创建了就可以;没有要求用户

       一定要创建在原数据所拥有的表空间下

 

      2.接着授权给新建的用户:

      SQL>grant read,write on directory dpdata to pocsit;——给用户授予读写逻辑目录的权限

      SQL> grant connect,resource to pocsit; ——表示把 connect(连接),resource(数据源)权限授予pocsit用户

      SQL> grant dba to news;  ——表示把 dba权限(最高权限)授予给news用户

      授权成功。

六、导入数据

       格式:impdp 用户名/口令 directory=逻辑目录名 dumpfile = *.dmp schemas=用户名;

       如:

      user>impdp pocsit/pocsit directory=dpdata  dumpfile = 123exp.dmp  schemas=pocsit;

按回车------------等待吧!