oracle怎么导入dmp文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle怎么导入dmp文件相关的知识,希望对你有一定的参考价值。

oracle怎么导入dmp文件

关于dmp文件我们用的还是比较多的,dmp文件它是作为oracle导入和导出表使用的文件格式,今天就将dmp文件导出和导入进行学习。

dmp文件导出

dmp文件导出用的比较多的一般是三种,他们分别是:导出整个数据库实例下的所有数据、导出指定用户的所有表、导出指定表。

这里已我的数据库为例,进行介绍,我的Oracle数据库实例为"ORACLE",查看自己数据库实例可以从"任务管理器-->服务"中进行查看,如下图


打开命令行:

1,将数据库ORACLE完全导出,用户名system密码manager 导出到c:\\daochu.dmp中

exp system/manager@ORACLE  file=c:\\daochu.dmp full=y

2,将数据库中RFD用户与,JYZGCX用户的表导出

exp system/manager@ORACLE  file=d:\\daochu.dmpowner=(RFD,JYZGCX)

3,将数据库中的表T_USER、T_ROLE导出

expJYZGCX/JYZGCX@ORACLEfile=  d:\\data\\newsmgnt.dmp tables=(T_USER,T_ROLE)

上面的system为用户名,manager为密码,ORACLE为数据库实例名,其实不一定非的用system用户,只要是拥有管理员权限的用户都可以。

dmp文件导入

1,打开“开始”-->输入cmd—> sqlplus /nolog;

2,输入 conn / as sysdba管理员账户登录;

3,需要创建表空间,如果我们知道需要导入的数据库的表空间直接创建就可以,如果不不知道,也没有关系,我们可以用txt打开dmp文件,使用快捷键ctrl+F,查找tablespace,就可以找到这个dmp文件所对应数据库的表空间,然后创建我们找到的表空间就可以;

步,不创建的表空间,创建用户,并分配权限;

5,打开“开始”-->输入cmd(注意:这里是cmd窗口,不是sqlplus窗口!!!),输入以下语句:“imp  kang/123456@localhost/ORACLEfile="C:\\daochu.dmp"full=y ignore=y”

上述语句说明如下:

kang是创建的登录数据库用户名;

123456是登录数据库的密码;

localhost:代表当前数据库的地址是本机,如果是远程导入,替换成对应的ip地址就行

ORACLE:是实例名称)

file:后面的是你当前dmp文件存放的路径

full=y,这个貌似是全部

ignore=y,忽略一些错误

备注:关于数据库实例、表空间、用户等基本概念和创建的语句可参考前面的文章“Oracle学习——扫盲篇”

小结

本篇文章主要讲述了,oracle数据导出和导入的具体步骤,其中导入dmp文件的时候即便不知道表空间、用户名和密码也可以进行导入。

参考技术A

通过导入导出dmp文件,可以把一个或多个数据库表的表结构和表数据同时导入导出。下面是进行导入导出的步骤:

1、进入命令行,点击开始,输入cmd;

2、回车,出现命令行窗口;

3、导入的命令是“imp 用户名/密码@网络服务名 file=xxx.dmp full=y”,输入此命令即可导入;

4、导出的命令是“exp 用户名/密码@网络服务名 file=xxx.dmp tables=(表名)”,输入此命令即可导出。

参考技术B 1、先看你要目标数据库与备份的版本差异(此类问题解决的是导入版本出错问题)
2、是怎么备份出来的(是exp备出的,还是数据泵备出的)
2、备份出来的数据的用户名
3、了解备份是有分区表的还是没有分区表的,有分区表的先建立分区表空间。
4、看数据量大不大,如果大的话要先建立大表的结构,这样导入速度快。
5、先按照先前的表空间建立数据库。
6、建立完成导入(开始->运行->输入cmd imp 用户名/密码 fromuser=备份出来的用户名 touser=用户名 file=路径\备份.dmp log=路径\日志名.log buffer=4096000 ignore=y commit=y feedback=10000)
参考技术C 本机安装了ORACLE 的话
点击开始-->运行-->cmd
在黑窗口 imp 用户名/密码@数据库名 file=dmp路径 full="y"

imp mes/mes@ORCL file="d:\110516mes.dmp" full="y" 这是我的。
导入的时候你要创建相应的用户赋予权限
参考技术D 开始->运行->输入cmd->imp PECARD_HN/PECARD_HN@127.0.0.1:1521/orcl file=E:\work\dmp\PECARD_HN.dmp full=y

DMP文件导入到SQL中

oracle备份出的DMP文件,现在没有oracle环境,有什么方法能导入到SQL中吗?
哪位大神有oracle,能帮忙转换一下文件格式不?

参考技术A 1.system用户登陆plsql客户端 进入创建表空间
create tablespace tds_tde
datafile 'E:/ORACLE/ORADATA/ORCLTEST/tds_tde.dbf' size 600M reuse
autoextend on next 10M maxsize unlimited extent management local;
其中tds_tde即为表空间名称 'E:/ORACLE/ORADATA/ORCLTEST/tds_tde.dbf' 为数据库安装路径

查看表空间名称和位置:select tablespace_name,file_name from dba_data_files
2.创建一个用户, 指定其表空间为第1 步创建的表空间
create user tds_tde identified by tds_tde
profile default
default tablespace tds_tde
temporary tablespace temp
account unlock;
3. 添加dba角色
创建用户后可以看到user项多了一个用户 tds_tde,编辑改用户将其角色栏中添加dba
4.用户tds-tde登陆plsql客户端,导入dmp
用户tds-tde登陆plsql客户端,注意以Normal进入即可,点击工具、导入表 选择需要导入dmp文件,然后导入即可。
参考技术B 无法导入的,表结构都不一样,很容易造成文件缺失 参考技术C 第1步,找个同版本ORACLE环境;
第2步,在该环境中,将DMP文件导出为SQL文件(可使用PL/SQL);
参考技术D 没办法,导入oracle环境吧...

以上是关于oracle怎么导入dmp文件的主要内容,如果未能解决你的问题,请参考以下文章

oracle dmp文件怎么打开

oracle 导出文件dmp文件怎么打开

只有一个dmp文件 怎么恢复oracle数据库 !

oracle dmp导入后还需要建立表空间吗?

ORACLE 的dmp文件

请问oracle怎么从dmp文件只恢复一张表的数据,恢复到另一个用户中