众所周知,我们从oracle高版本迁移数据库到oracle低版本,是一件不太容易的事情。如果直接使用sql developer工具,可能无法完全迁移成功(中间或多或少会出现错误)。
exp,imp 对于同版本的oracle资料复制备份适用,若是不同版本的oracle资料复制,特被是从高版本备份资料到低版本时候,使用exp,imp有可能出现无法完全还原资料的情况,我们利用oracle自带的工具expdp和impdp,可以轻松帮我们实现。我们以oracle 11g迁移数据库pms到oracle 10g中为例。
从oracle11g导出备份:
expdp USERID='sys/sysadmin@orcl as sysdba' schemas=PMS du mpfile=pms_emp.dmp directory=DATA_PUMP_DIR version=10.2.0.1.0schemas为源数据库sid,dumpfile为备份文件名,directory为备份文件存放目录,DATA_PUMP_DIR为oracle默认的存放目录,默认为ORACLE_HOME\admin\orcl\dpdump目录,version为目标数据库版本。
从oracle10g导入(还原)备份:
logfile为导出备份时所产生的log名。其余解释与上同。
这种方式进行的数据库迁移,一般情况下数据库还原的比较完整,不容易出现奇怪的错误。