因为dmp文件是从11g的oracle中导出,导入到10g的oracle中才出现的。oracle的版本不一致导致的。

[oracle@oracle-test ~]$ impdp oracle/oracle directory=expdp dumpfile=G.dmp TABLE_EXISTS_ACTION=REPLACE
Import: Release 10.2.0.4.0 - 64bit Production on Wednesday, 06 November, 2013 13:35:26

Copyright (c) 2003, 2007, Oracle. All rights reserved.

Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORA-39001: invalid argument value
ORA-39000: bad dump file specification
ORA-39142: incompatible version number 3.1 in dump file "/u01/app/oracle/expdp/G.dmp"

解决办法:
重新导出加上参数version
[oracle@oracle-test ~]$expdp oracle/oracle directory=impdir dumpfile=G01.dmp Version=10.2.0.4.0
Export: Release 11.2.0.1.0 - Production on Wed Nov 6 13:26:18 2013

Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.

Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Starting "ORACLE"."SYS_EXPORT_SCHEMA_01": oracle/********@orcl directory=impdir dumpfile=G01.dmp Version=10.2.0.4.0