开发者社区> 青夜之衫> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

数据库泵(expdp/impdp)导入导出流程

简介:
+关注继续查看

一、 数据库的导出(expdp)

  1. 创建默认导出目录
SQL>create directory [dirname] as ‘[dirpath]’;
  1. 赋予指定用户在此目录的读写权限
SQL>GRANT READ, WRITE ON DIRECTORY [dirname] to [dbuser];
  1. 使用expdp导出数据库
    ① 导出完整schema
> expdp [username/passwd] DUMPFILE=[dmpname].dmp DIRECTORY=[DIRECTORY_NAME] SCHEMAS=[schema_name]

② 导出除表以外的部分数据对象
可通过exclude参数排除无需导出的数据对象,如:

>expdp [username/passwd] DUMPFILE=[dmpname].dmp DIRECTORY=[DIRECTORY_NAME] logfile=[logname.log] exclude=[object_type]:”in (‘name_clause’,’ name_clause’,…)”, [object_type],…

example:

>expdp scott/tiger directory=dump_dir dumpfile=exc1.dmp logfile=exc1.log exclude=table:\”in \(\‘EMP\’,\’DEPT\’\)\”,view

其中单引号中的内容必须用大写才能生效

其他数据对象以此类推

③ 导出若干张表和若干张数据对象

>expdp [username/passwd] DUMPFILE=[dmpname].dmp DIRECTORY=[DIRECTORY_NAME] logfile=[logname.log] include=[object_type]:”in (‘name_clause’,’name_clause’,…)”,[object_type],…

example:

>expdp scott/tiger directory=dump_dir dumpfile=exc1.dmp logfile=exc1.log include=table:\ “in (\‘EMP\’,\’DEPT\’\)\”,view:\”in \(\‘V\_EMP\’\)\”,procedure
二、将导出的文件通过SCP传到需要导入的服务器上

example:

>scp * oracle@192.168.1.52:/data/dpdump
三、 将dmp文件导入到指定库中
  1. 创建默认导出目录
SQL>create directory [dirname] as ‘[dirpath]’;
2. 赋予指定用户在此目录的读写权限
SQL>GRANT READ, WRITE ON DIRECTORY [dirname] to [dbuser];
  1. 使用impdp工具导入
    ① 导入完整schema

用DBA权限登陆,指定schema进行全库导入

>impdp [dba_user/passwd] directory=[DIRECTORY_NAME]dumpfile=[dumpfile_name].dmp logfile=[logfile_name].log schemas=[schema_name]

如果想要更新已经存在的表则可以进行如下操作

> impdp [dba_user/passwd] directory=[DIRECTORY_NAME]dumpfile=[dumpfile_name].dmp logfile=[logfile_name].log schemas=[schema_name] table_exists_action=replace[truncate/append/skip]

② 导入除表以外的部分数据对象
>impdp [dba_user/passwd] directory=[DIRECTORY_NAME]dumpfile=[dumpfile_name].dmp logfile=[logfile_name].log schemas=[schema_name] exclude=table, [object_type]:”in (‘name_clause’),(‘name_clause’),…”,…

example:

>impdp system/oracle directory= dump_dir dumpfile=fulldb.dmp logfile=full_imp.log schemas=scott exclude =table,view:\”in \(\‘V\_BONUS\’\)\”

③ 导入若干张表和若张数据对象
>impdp [dba_user/passwd] directory=[DIRECTORY_NAME]dumpfile=[dumpfile_name].dmp logfile=[logfile_name].log schemas=[schema_name] include=[object_type]:”in (‘name_clause’),(‘name_clause’),…”, [object_type]:”in (‘name_clause’),(‘name_clause’),…”,…

example:

> impdp system/oracle directory=dump_dir dumpfile=fulldb.dmp logfile=full_imp.log schemas=scott include=table:\"in \(\'EMP\',\'DEPT\'\)\",view:\"in \(\'V\_EMP\',\'V\_DEPT\'\)\"

四、注意事项

  1. 如果导出的是指定模式下所有的数据对像,则想获得指定的数据对象时需在impdp中进行参数指定。
  2. 如果导出的是指定模式下的指定的数据对象,则impdp时无需指定可选参数。

补充:

  1. 仅导出数据库结构
impdp system/oracle directory=dump_dir dumpfile=fulldb.dmp logfile=full_imp.log schemas=scott content=metadata_only

本文转自ICT时空 dbasdk博客,原文链接:数据库泵(expdp/impdp)导入导出流程 ,如需转载请自行联系原博主。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
EXP/IMP EXPDP/IMPDP 时间比较
<p><span style="font-family:'lucida Grande',Verdana,'Microsoft YaHei'; font-size:14px"><strong><span style="white-space:pre"></span><span style="color:#00cccc">EXP/IMP EXPDP/IMPDP 时间比较</span></str
2691 0
expdp&impdp只导出表结构的方法
场景:把一个用户的数据表结构导入到另外一个用户的表结构,方法如下: 1. 赋目录权限给hdoa用户 grant read,write on directory expbk to hdoa; 2.
2630 0
PLSQL_数据泵导入进度查看Impdp/Expdp Status(案例)
20150701 Created By BaoXinjian 一、摘要 查看EXPDP/IMPDP的进度,当你当如导出的时候,如果数据量比较大,中途有些人会着急,不免想看看进度如何 1. 两个视图 DBA_DATAPUMP_JOBS; DBA_DATAPUMP_SESSIONS; 2.
2754 0
PLSQL_数据泵定参数批量导入多表Expdp/Impdp Parfile(案例)
2015-04-01 Created By BaoXinjian 一、摘要 PARFILE 可以把各种参数配置为一个文本键值形式的文件,该参数可以指定参数文件的位置。 Expdp命令可以调用Parfile文件,在Parfile里可以写备份脚本,可以使用Query选项。
1754 0
Oracle数据导入导出imp/exp命令 10g以上expdp/impdp命令
Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。
1718 0
数据泵IMPDP 导入工具的使用
--================================= --数据泵IMPDP 导入工具的使用 --=================================         数据的导入导出时数据库经常处理的作业之一,Oracle 提供了IMP和IMPDP以及SQL*Loader等工具来完成数据的导入工作,其中IMP服务于早期的9i之前的版本,在10g及后续版本,Oracle 提供了数据泵高速导入工具,本文主要介绍IMPDP的使用方法,关于高速导出工具请参照:数据泵EXPDP 导出工具的使用。
1192 0
impdp 导入的用法!
数据泵导入实用程序提供了一种用于在 Oracle 数据库之间传输数据对象的机制。该实用程序可以使用以下命令进行调用:      示例: impdp scott/tiger DIRECTORY=dmpdir DUMPFILE=scott.dmp 您可以控制导入的运行方式。
933 0
+关注
1040
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载