EXCLUDE 的值格式错误导入 Oracle Database 12c Enterprise Edition Release 12.1.0.1.0

Value for EXCLUDE is badly formed Importing Oracle Database 12c Enterprise Edition Release 12.1.0.1.0

我想导入一个Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production

使用命令:

impdp SOLVIA/SOLVIA900@IMMBO DIRECTORY=DB_EXP DUMPFILE=week_exp_immbo.dmp LOGFILE=week_exp_immbo.log REUSE_DATAFILES=YES exclude=tablespace:"IN ('IMMBO')"

但是我得到了这个错误:

Connected to: Oracle Database 12c Standard Edition Release 12.2.0.1.0 - 64bit Production
ORA-39001: invalid argument value
ORA-39071: Value for EXCLUDE is badly formed.
ORA-00936: missing expression

在命令模式下使用数据泵排除参数需要转义引号

您使用的调用看起来很合理。

这里是:

impdp SOLVIA/SOLVIA900@IMMBO DIRECTORY=DB_EXP DUMPFILE=week_exp_immbo.dmp LOGFILE=week_exp_immbo.log REUSE_DATAFILES=YES exclude=tablespace:"IN ('IMMBO')"

根据 My Oracle Support 文档,How To Resolve The Error ORA-39071 Value For EXCLUDE Is Badly Formed (Doc ID 734324.1),您需要像这样*转义引号:

impdp SOLVIA/SOLVIA900@IMMBO DIRECTORY=DB_EXP DUMPFILE=week_exp_immbo.dmp LOGFILE=week_exp_immbo.log REUSE_DATAFILES=YES exclude=tablespace:\"IN (\'IMMBO\')\"

*:Linux 操作系统需要转义引号。这不适用于 Windows 操作系统。