整体介绍:
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,输入的口令不可见,输入后按回车即可开始创建表空间。
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:\';
五、创建用户并授权
注:如源数据为整个数据库的数据,用户名要和原导出数据的用户名一致,笔者亲试
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;
按回车------------等待吧!