
1,使用oracle的imp命令导入dmp文件
首先要明确知道,使用oracle的imp命令进行导入,要在一个空的数据库下,才是最好的,否则,数据表存在的话,就要先删除数据表中的数据
步骤1:禁用约束 alter table table disable constraint FK_ForeignKey ;
使用sqlplus命令登录到oracle数据库,举例如下:
比如你要用scott这个用户进行导入数据,首先要保证这个用户有dba权限,因此要用oracle的system用户登录数据库,对scott用户授权
sqlplus system/123456
grant dba to scott
退出sqlplus 注:exit命令
sqlplus scott/tiger
删除表数据 truncate table table_name
退出sqlplus
使用这个导入命令将备份导入
imp scott/tiger@testdb full=y file=d:\scottdmp ignore=y log=d:\logtxt
testdb :数据库名字 log=d:\logtxt为报错的时候日志记录 scott/tiger:登录用户名和密码
导出成功后,再次登录oracle
sqlplus scott/tiger
执行启用约束
alter table table enable constraint FK_ForeignKey ;
在Oracle中使用exp和imp导出,导入dmp数据库文件: 一,oracle数据库导出工具 exp: 1 它是一个可执行的文件 存放目录/ORACLE_HOME/bin exp导出工具将数据库中数据备份压缩成一个二进制系统文件 它有三种模式: a 用户模式:导出用户所有对象
在运行中输入cmd d出命令行窗口 ,找到你的oracle 的安装目录 找到bin目录 之后 在bin目录下 输入:imp userid=用户名/密码@orcl file=d:\nc60dmp full=y用户名 :就是你的目标用户 。密码 :就是你的目标用户登录密码。orcl:是实例名称 就是数据库名file:就是你要导入的dmp文件全路径。full=y 是否全部导入 只有当前用户是dba的时候 才能用此选项 。希望能帮助你。
关于dmp文件我们用的还是比较多的,dmp文件它是作为oracle导入和导出表使用的文件格式,今天就将dmp文件导出和导入进行学习。
dmp文件导出
dmp文件导出用的比较多的一般是三种,他们分别是:导出整个数据库实例下的所有数据、导出指定用户的所有表、导出指定表。
这里已我的数据库为例,进行介绍,我的Oracle数据库实例为"ORACLE",查看自己数据库实例可以从"任务管理器-->服务"中进行查看,如下图
打开命令行:
1,将数据库ORACLE完全导出,用户名system密码manager 导出到c:\daochudmp中
exp system/manager@ORACLE file=c:\daochudmp full=y
2,将数据库中RFD用户与,JYZGCX用户的表导出
exp system/manager@ORACLE file=d:\daochudmpowner=(RFD,JYZGCX)
3,将数据库中的表T_USER、T_ROLE导出
expJYZGCX/JYZGCX@ORACLEfile= d:\data\newsmgntdmp 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:\daochudmp"full=y ignore=y”
上述语句说明如下:
kang是创建的登录数据库用户名;
123456是登录数据库的密码;
localhost:代表当前数据库的地址是本机,如果是远程导入,替换成对应的ip地址就行
ORACLE:是实例名称)
file:后面的是你当前dmp文件存放的路径
full=y,这个貌似是全部
ignore=y,忽略一些错误
导入dmp数据库文件有IMP和IMPDP两种方法,IMP只适用于EXP导出的文件,不适用于EXPDP导出文件;IMPDP只适用于EXPDP导出的文件,而不适用于EXP导出文件:
1、IMP方法
(1)导入数据库
imp system/密码@数据库实例名 file=G:\dmp full=y
(2)导入方案
导入自身方案
imp 用户名/密码@数据库实例名 file=G:\dmp fromuser=原用户 touser=目标用户
导入非自身方案
imp system/密码@数据库实例名 file=G:\dmp fromuser=原用户 touser=system
(3)导入表
导入自身方案的表
imp 用户名/密码@数据库实例名 file=G:\dmp tables=表名
导入非自身方案的表
exp system/密码@数据库实例名 file=G:\dmp owner=表名 fromuser=原用户 touser=system
2IMPDP
(1)导入数据库
impdp system/密码 directory=dir_dp_wk dumpfile =dmp full=y;
(2)导入方案
impdp 用户名/密码 directory=dir_dp_wk schemas=方案名 dumpfile =dmp;
(3)导入表
impdp 用户名/密码 directory=dir_dp_wk dumpfile =dmp tables=表名;
注意:dir_dp_wk 为目录,需要自己创建并授权。
用工具(pl/sql):工具->导入表->Oracle导入,填写导出用户,与要导入的用户(目标用户),界面上应该是从用户 和 到用户,选择你的dump文件位置,非导入可执行文件选项,点击导入就可以了。
命令行方式:imp userid=user/password@SID file='d:\xxxdmp' fromuser=xxxx touser=yyyy commit=y buffer=100000000
这是数据较多的情况,如果数据不多,可以不加commit与buffer参数,userid是目标数据库的用户。
以上就是关于怎么手动把.dmp数据导入到oracle数据库中全部的内容,包括:怎么手动把.dmp数据导入到oracle数据库中、mySQL 中怎么将dmp文件导入数据库、oracle怎么导入dmp文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)