oracle数据泵导出导入

先创建一个目录:比如 Create  or Replace directory  DATA_PUMP_DIR as 'D:\DataPipe';
 
然后给导入导出的用户赋权限: Grant read,write on directory DATA_PUMP_DIR to zsdx;
 
expdp bjcyqwsj_zcgl/bjcyqwsj_zcgl@ORCL directory=DATA_PUMP_DIR DUMPFILE=zcgl_20160702.dmp TABLESPACES=bjcyqwsj_zcgl,cyws version=10.2.0.1.0
 
expdp hqdx/hqdx directory=DATA_PUMP_DIR DUMPFILE=hqdx_20171011.dmp TABLESPACES=hqdx version=10.2.0.1.0;
 
expdp bsd/bsd DIRECTORY=DATA_PUMP_DIR DUMPFILE=bsd_0919.dmp schemas=bsd version=10.2.0.1.0;
 
 
然后导出的文件就在这个目录了,导入的命令中指定目录就可以了 directory=DATA_PUMP_DIR
TABLESPACES如果是从多个表空间导出,则需要加单引号,单个表空间不用加
 
impdp hospital/hospital directory=DATA_PUMP_DIR dumpfile='JDKQYYZCGL10GLQD.DMP' remap_schema=jdkqyyzcgl:hospital remap_tablespace = jdkqyyzcgl:hospital
 
remap_schema:导出的用户:导入的用户
remap_tablespace:导出表空间名:导入表空间名
impdp system/orcl directory=DATA_PUMP_DIR dumpfile='zcgl_jy.dmp' remap_schema=zcgl_jy:zcgl_jy remap_tablespace=ZCGL_JY:ZCGL_JY;
 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 
如何使用数据泵导出?
 
在使用数据泵之前,必须创建DIRECTORY并获得访问这么对象的权限create directory dmp as 'E:\directory_bak';-direcitory不能写全路径,需要写一个代称
 
grant read on directory dmp to test;-把directory的读权限赋给test用户
 
expdp test/test@orcl directory=dmp dumpfile = t.dmp logfile=test.log version=10.2.0.1.0-version参数是指定导出的版本,例如导出的数据库是11g,需要还原到10g数据库中,则需要使用version参数指定数据库具体版本
 
 
c) 如何使用数据泵导入?
 
将备份的dmp文件放到需要导入的数据库服务器端的directory目录,可以通过select * from dba_directories;查询服务器端directory目录
 
执行导入:impdp test01/test01@orcl directory=DATA_PUMP_DIR dumpfile=test.dmp logfile=imptest.log remap_schema=test:test01 remap_tablespace=test:test01 full=y
 
这里说明一下remap_schema、remap_tablespace,其中remap_schema是将一个用户的数据迁移到另一个用户中,remap_tablespace是将一个表空间的数据迁移到另一个表空间
posted @ 2017-10-12 18:23  落叶已归根  阅读(585)  评论(0编辑  收藏  举报