expdp与impdp
参考http://blog.csdn.net/hello985/article/details/13295305
(一) 导出scott用户下的emp表到xx用户下
1.1 创建DIRECTORY,用sys用户创建
create directory DATA_PUMP_DIR as 'D:\dir_dp';
1.2 在该目录上对scott用户授读写权限
Grant read,write on directory DATA_PUMP_DIR to scott;
--查看目录及权限
select * from dba_directories;
select * from user_tab_privs where table_name = 'DATA_PUMP_DIR';
1.3 执行导出
expdp scott/tiger@orcl tables = emp
directory=DATA_PUMP_DIR dumpfile=expdp_emp.dmp
logfile=expdp_emp.log
--这里将scott用户下的emp表导出到DATA_PUMP_DIR目录中,保存文件为:expdp_emp.dmp,生成日志文件:expdp_emp.log。若要以其它模式导出,修改参数即可。
1.4 导入之前准备
如果导入的数据库与导出的数据库不是同一个库,导入之前要重复1、2两步操作,并将导出文件上传到要导入的服务器
1.5 执行导入
impdp xx/xx@orcl tables = scott.emp
directory= DATA_PUMP_DIR dumpfile=expdp_emp.dmp
logfile=expdp_imp.log TABLE_EXISTS_ACTION = REPLACE REMAP_SCHEMA=scott:xx
(二)
附录
2.1
更换表空间
采用remap_tablespace参数
--导出gwm用户下的所有数据
expdp system/orcl directory=data_pump_dir dumpfile=gwm.dmp SCHEMAS=gwm
注:如果是用sys用户导出的用户数据,包括用户创建、授权部分,用自身用户导出则不含这些内容
--以下是将gwm用户下的数据全部导入到表空间gcomm(原来为gmapdata表空间下)下
impdp system/orcl directory=data_pump_dir dumpfile=gwm.dmp
remap_tablespace=gmapdata:gcomm
2.2 更换用户名
REMAP_SCHEMA
该选项用于将源方案的所有对象装载到目标方案中.
REMAP_SCHEMA=source_schema:target_schema
impdp xx/xx@orcl tables = scott.emp
directory= DATA_PUM
P_DIR dumpfile=expdp_emp.dmp
logfile=expdp_imp.log TABLE_EXISTS_ACTION = REPLACE remap_schema=scott:xx
remap_tablespace=users:example
2.3 expdp导出模式
a、按表导出:
expdp scott/tiger@orcl tables=scott.emp dumpfile =expdp_test2.dmp
logfile=expdp_test2.log directory=dir_dp job_name=my_job
b、按查询条件导出:
expdp scott/tiger@orcl tables=lttfm.b$i_exch_info dumpfile
=expdp_test3.dmp logfile=expdp_test3.log directory=dir_dp job_name=my_job
query='"where rownum<11"'
c、按表空间导出:
Expdp scott/tiger@orcl dumpfile=expdp_tablespace.dmp tablespaces=GCOMM.DBF
logfile=expdp_tablespace.log directory=dir_dp job_name=my_job
d、导出方案
Expdp scott/tiger@orcl DIRECTORY=dir_dp
DUMPFILE=schema.dmp SCHEMAS=lttfm,gwm
e、导出整个数据库:
expdp scott/tiger@orcl dumpfile =full.dmp full=y logfile=full.log
directory=dir_dp job_name=my_job
f、按用户导出
expdp scott/tiger@orcl schemas=scott
dumpfile=expdp.dmp DIRECTORY=dpdata1;
2.4
impdp导入模式:
a、按表导入
p_street_area.dmp文件中的表,此文件是以gwm用户按schemas=scott导出的:
impdp xx/xx@orcl dumpfile =scott.dmp logfile=imp_scott.log directory= data_pump_dir tables=emp job_name=my_job
b、按用户导入(可以将用户信息直接导入,即如果用户信息不存在的情况下也可以直接导入)
impdp xx/xx@orcl schemas=scott dumpfile =expdp_test.dmp logfile=expdp_test.log
directory= data_pump_dir job_name=my_job
c、不通过expdp的步骤生成dmp文件而直接导入的方法:
--从源数据库中向目标数据库导入表p_street_area
impdp xx/xx@orcl directory= DATA_PUMP_DIR
NETWORK_LINK=igisdb tables=p_street_area logfile=p_street_area.log
job_name=my_job
igisdb是目的数据库与源数据的链接名,dir_dp是目的数据库上的目录
2.5 CONTENT
EXP和IMP的ROWS参数经常会被用到,而在数据泵中,这个功能被CONTENT参数所取代。同样,CONTENT参数在EXPDP/IMPDP两个命令中都可以指定。其中CONTENT参数的ALL选项对应EXP/IMP的ROWS=Y,而CONTENT参数的METADATA_ONLY对应EXP/IMP的ROWS=N。
数据泵还能实现EXP/IMP所不能实现的功能,就是只导出数据,而不导出表结果即DATA_ONLY参数。
expdp scott/tiger
directory=d_output dumpfile=yangtk_data.dp content=data_only
当然传统的EXP/IMP虽然不能实现不导出表结构,但是在IMP的时候使用IGNORE=Y参数,可以忽略表已经存在而导致的建表操作,从这个意义上讲,变相实现了只导入数据的功能。
2.6 并行操作(PARALLEL)
您可以通过 PARALLEL
参数为导出使用一个以上的线程来显著地加速作业。每个线程创建一个单独的转储文件,因此参数 dumpfile 应当拥有和并行度一样多的项目。您可以指定通配符作为文件名,而不是显式地输入各个文件名,例如:
expdp scott/tiger@orcl schemas=scott directory=DATA_PUMP_DIR
dumpfile=expdp_emp_%U.dmp
logfile=expdp_emp.log parallel=4
impdp xx/xx@orcl directory= DATA_PUMP_DIR
dumpfile=expdp_emp_%U.dmp logfile=expdp_imp.log TABLE_EXISTS_ACTION = REPLACE
remap_schema=scott:xx remap_tablespace=users:example parallel=4
注意:dumpfile 参数拥有一个通配符 %U,它指示文件将按需要创建,格式将为expCASES_nn.dmp,其中nn 从 01 开始,然后按需要向上增加。
在并行模式下,状态屏幕将显示四个工作进程。(在默认模式下,只有一个进程是可见的)所有的工作进程同步取出数据,并在状态屏幕上显示它们的进度。
分离访问数据文件和转储目录文件系统的输入/输出通道是很重要的。否则,与维护 Data Pump 作业相关的开销可能超过并行线程的效益,并因此而降低性能。并行方式只有在表的数量多于并行值并且表很大时才是有效的。
1) 对于导出的parallel
对于导出来说,由于dump文件只能由一个线程进行操作(包括I/O处理),因此如果输出的DUMP文件只有一个,即使你指定再多的并行,实际工作仍然是一个,而且还会触发ORA-39095错误。因此,建议设置该参数小于或等于生成的DUMP文件数量。那么,如何控制生成的DUMP文件数量呢?
EXPDP命令提供了一个FILESIZE参数,用来指定单个DUMP文件的最大容量,要有效的利用parallel参数,filesize参数必不可少。
举例:某用户对象占用了4G左右的空间,实际导出后的DUMP文件约为3G,我们尝试在导出该用户时指定并行度为4,设置单个文件不超过500M,则语法如下:
$ expdp user/pwd directory=dump_file
dumpfile=expdp_20100820_%U.dmp logfile=expdp_20100820.log filesize=500M
parallel=4
2) 对于导入的parallel
对于导入来说,使用parallel参数则要简单的多,我认为导入更能体现parallel参数的优势。参数设置为几,则认为同时将几张表的内容导入到库中。
举例:某dmp文件中包含了200张表,我们尝试在导入该DMP文件时指定并行度为10,则语法如下:
$ impdp user/pwd directory=dump_file dumpfile=expdp_20100820.dmp
logfile=impdp_20100820.log parallel=10
expdp与impdp的更多相关文章
- ORACLE使用EXPDP和IMPDP数据泵进行导出导入的方法
ORACLE使用EXPDP和IMPDP数据泵进行导出导入的方法 (2010-05-28 12:54:34) http://blog.sina.com.cn/s/blog_67d41beb0100ixn ...
- 数据库导出导入操作(expdp,impdp)
EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用. 命令行: sqlplus/nolog connect username/password as sysd ...
- EXPDP和IMPDP简单测试
一.EXPDP和IMPDP使用说明 Oracle Database 10g引入了最新的数据泵(Data Dump)技术,数据泵导出导入(EXPDP和IMPDP)的作用 1)实现逻辑备份和逻辑恢复. ...
- oracle expdp和impdp使用例子
情景: 由于生产需求,需要把rmtel用户的数据完全复制一份给rmtel_xzy,但排除rmtel用户 ('CAB_JJXPORT_TAB','T_SERVICEXX','TB_CROSSCONNEC ...
- Oracle10g数据泵EXPDP和IMPDP备份与恢复数据
Oracle10g数据泵EXPDP和IMPDP备份与恢复数据 一.数据库备份前准备工作 新建备份DIRECTORY目录,并授权给用户 步骤: 1.登录sqlplus 账户名:ptemp 密码:0000 ...
- 使用数据泵expdp、impdp备份和还原oracle数据库
前面我已经整理过EXP 和 IMP备份和还原Oracle数据库的方法 今天我们只讲使用数据泵 expdp 和impdp的方法,有的同学会问他们有什么差别呢? EXP和IMP是客户端工具程序,它们既可以 ...
- expdp和impdp导入导出用法【转】
关于expdp和impdp exp和imp是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用.expdp和impdp是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用.i ...
- expdp和impdp导入和导出数据
一 关于expdp和impdp 使用EXPDP和IMPDP时应该注意的事项:EXP和IMP是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用.EXPDP和IMPDP是服务端的工具程 ...
- expdp和impdp快速导出导入,不用创建虚拟目录
expdp 和impdp不用创建虚拟目录:在cmd直接 expdp 用户名/密码 回车 就导出了,(如果提示输入用户名和密码就输入).再将导出的文件放在oracle默认的dpdump文件夹里面,然 ...
- expdp和impdp 使用注意事项
使用EXPDP和IMPDP时应该注意的事项: EXP和IMP是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用. EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用, ...
随机推荐
- 翻译「C++ Rvalue References Explained」C++右值引用详解 Part3:右值引用
本文为第三部分,目录请参阅概述部分:http://www.cnblogs.com/harrywong/p/4220233.html. 右值引用 如果x是任意类型,那么x&&则被称作一个 ...
- sc delete 服务器名提示“指定的服务已经标记为删除”
症状:停止服务后,右键无法点击“启动”,打开命令输入SC删除服务后提示如标题描述 原因:进程还在 解决方案:打开任务管理器,进程,找到你的已停止服务名,右键,结束进程,再操作即可删除服务
- 25_android下文件访问的权限
写文件:FileOutputStream fos = 上下文.openFileOutput("private.txt",Context.MODE_PRIVATR);参数1 文件名, ...
- android 上传文件"Content-Type",为"application/octet-stream" 用php程序在服务端用$GLOBALS['HTTP_RAW_POST_DATA']接受(二)
服务端php程序file_up.php function uploadFileBinary() { $this->initData(); $absoluteName = "" ...
- ios项目记录
1,如何隐藏状态栏 在基类中重载UIViewController.h中的这个方法 - (BOOL)prefersStatusBarHidden { // iOS7后,[[UIApplication s ...
- Cordova V3.0.0中config.xml配置文件的iOS Configuration
http://www.cnblogs.com/lovecode/articles/3305655.html 轉載這個 <preference> 关于这个标签的可用设置有: Disall ...
- rsync 实现实时增量备份
Rsync + Crontab实现定时文件同步(首次全量+后续增量) 2015-04-14 19:02:11 标签:增量更新 rsync crontab 原创作品,允许转载,转载时请务必以超链接形式标 ...
- SVN 外部引用(svn:externals)处理相似系统的公用代码
一.创建外部引用 我们常常遇到这样一个场景,我们有两个系统,两个系统用的是同一套框架.如果我们用两套程序 去做,当我们修改这个公共的框架的时候,另外一个还是旧版本的,很容易造成混乱. SVN的外部用就 ...
- Landsat8免费下载地址
一.国外 Landsat8提供免费下载,在USGS上有两个网站,下面介绍的这个网站操作比较方便.这里大赞美国的USGS和NASA机构,不但提供免费下载的数据,而且下载网站制作和维护的非常便捷.废话少说 ...
- 【MySQL】InnoDB引擎ibdata文件损坏/删除后使用frm和ibd文件恢复数据
参考:http://my.oschina.net/sansom/blog/179116 参考:http://www.jb51.net/article/43282.htm 注意!此方法只适用于innod ...