导入数据库IMPDP - 不同版本

时间:2016-02-09 15:45:13

标签: oracle impdp expdp

我们在2个不同的服务器上安装了oracle。

服务器1:Oracle版本详细信息

Oracle Database 11g Express Edition Release 11.2.0.2.0 - Production
PL/SQL Release 11.2.0.2.0 - Production
"CORE   11.2.0.2.0  Production"
TNS for 32-bit Windows: Version 11.2.0.2.0 - Production
NLSRTL Version 11.2.0.2.0 - Production

服务器2:Oracle版本详细信息

Oracle Database 11g Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
"CORE   11.2.0.1.0  Production"
TNS for 64-bit Windows: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production

我需要将数据库备份从服务器1导入到服务器2.我试过这个。

从服务器1导出:

EXPDP Username/Password@xe DIRECTORY=CUSTOM_DIR SCHEMAS=PRICE DUMPFILE=PRICE.DMP

导入到服务器2:

IMPDP Username/Password@\"(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=Test)(PORT=1500)))(CONNECT_DATA=(SID=TESTSID)))\" DIRECTORY=CUSTOM_DIR DUMPFILE=TEST.DMP TABLE_EXISTS_ACTION=REPLACE LOGFILE=TEST.LOG

导入时,我得到例外,

Copyright (c) 1982, 2013, Oracle and/or its affiliates.  All rights reserved.
UDI-00018: Data Pump client is incompatible with database version 11.2.0.1.0

是否无法在不同版本之间导入备份。?

2 个答案:

答案 0 :(得分:0)

是的,有可能。你需要提供"版本"导出参数,并指定11.2.0.1。这将指示expdp创建与该版本兼容的dmp文件。见expdp command reference

答案 1 :(得分:0)

我尝试使用 Oracle Database 12g数据泵 Oracle 11g数据库中导入转储文件。我得到的回报是UDI-00018:Data Pump客户端与数据库版本11.2.0.4.0不兼容。

原因是:两个版本不同的Oracle Home,并且调用的expdp / impdp错误(验证路径变量)。

这可能与您有关。您的环境中还有另一个$ ORACLE_HOME,并且调用的数据泵来自该环境。验证您的.bash_profile或.profile文件并设置正确的环境。