Oracle数据库:impdp导入数据库及expdp导出数据过程详解

1.创建数据库(可使用默认的数据库,此步骤可省略)
2.在数据库中创建表空间,最好与导出的数据库的表空间相同名称,参考 http://jingyan.baidu.com/article/5225f26b036c47e6fa0908e4.html
创建表空间的SQL命令(PLSQL下操作):create tablespace TJFRAMEWORK datafile 'E:\zlProFiles\myOracle\oracle\a.dbf' size 100m autoextend on next 100m
maxsize 20480m extent management local;(备注:TJFRAMEWORK 为表空间名称,datafile后面跟的路径为数据库表空间的中转、转储缓存路径,)
3.创建用户并指定表空间SQL命令:create user JKQYJ identified by JKQYJ default tablespace TJFRAMEWORK;(备注:这里第一个 JKQYJ为创建的用户名,
第二个 JKQYJ为创建的用户密码, TJFRAMEWORK为表空间名)
4.给创建的用户授权SQL命令:grant connect,resource,dba to JKQYJ;   grant create session,dba to JKQYJ;
此时用户创建成功并完成授权,可以用此用户登录数据库了。(但是此时数据库表空间还没有数据)
5.导入数据库前必须要先创建文件夹,SQL命令: create   or   replace  directory bao  as   'e:\oracle\test' ; (备注:bao作为路径的重命名,在后面还会使用到)
6.给使用的用户(上面创建的用户)授权(读写权限)SQL命令: Grant   read ,write  on  directory bao  to JKQYJ ;(备注: JKQYJ是上面创建的用户,此处授权的用户是管理员或者拥有更高权限的用户给刚创建的 JKQYJ用户授权、不能是自己给自己授权,更不能是拥有低权限的用户给新建的用户授权
7. 查看目录及权限(此处只是查看权限,可跳过)  : SELECT  privilege, directory_name, DIRECTORY_PATH  FROM  user_tab_privs t, all_directories d  WHERE  t.table_name(+) = d.directory_name  ORDER   BY  2, 1;
8.手动创建文件夹路径(备注:在上面步骤5 创建完文件夹后,在win7下是没有创建的文件夹的,需要手动创建文件夹,并且把使用expdp导出的dmp文件放入该文件夹下,开始自 己导入时,创建完文件夹后始终在磁盘上找不到)
9.把需要导入数据库的.dmp文件复制到上面创建的文件夹路径下,即把.dmp文件复制到Windows系统的 e:\oracle\test路径下
10.导入.dmp文件,command命令: impdp 用户名/密码 schemas=要导入的用户(即是使用expdp导出的用户) directory=创建的文件夹名称(directory_name) dumpfile=test.dmp(要放入到directory_path路径下) logfile=imp.log(可以不写)
eg:impdp JKQYJ/JKQYJ schemas=JKQYJ directory=bao dumpfile=JKQYJ_20161124.DMP (备注:bao是上面创建的中转、转储文件夹; dumpfile 后面跟的是文件名称,不能包含路径信息,此时需要导入的数据库文件已经放入了上面创建的文件夹路径下
期间可能遇到的问题:
1):ORA-39070:无法打开日志文件。 ORA-39087:目录名 e:\oracle\test无效。 导致原因:未把新建的文件夹路径授权给新建的用户。
2):IMP-00010: 不是有效的导出文件, 头部验证失败 。  导致原因:导出.dmp文件和导入.dmp文件的命令不对应,使用expdb导出的数据库文件就必须要impdb命令导入数据库。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值