当我在 Oracle 12c SE2 中运行此命令时:
impdp system/Oracle_1@pdborcl directory=DATA_PUMP_DIR dumpfile=mydb.dmp nologfile=Y
我明白了:
ORA-39001 : invalid argument value
ORA-39000 : bad dump file specification
ORA-39088 : directory name DATA_PUMP_DIR is invalid
我们过去一直把它导入到 11g 中。
我该如何解决这些错误?
最佳答案
Be aware of the following requirements when using Data Pump to move data into a CDB:
...
- The default Data Pump directory object, DATA_PUMP_DIR, does not work with PDBs. You must define an explicit directory object within the PDB that you are exporting or importing.
您需要在 PDB 中定义自己的目录对象,您的用户(此处为系统)对其具有读/写权限。
create directory my_data_pump_dir as 'C:\app\OracleHomeUser1\admin\orcl\dpdump';
grant read, write on directory my_data_pump_dir to system;
它可以是 DATA_PUMP_DIR 指向的相同操作系统目录,您只需要一个单独的目录对象。但我已经使用了你说你喜欢的路径,来自对上一个问题的评论。
然后将导入修改为:
... DIRECTORY=my_data_pump_dir DUMPFILE=mydb.dmp
关于oracle - 为什么我得到 ORA-39001 : invalid argument value when I try to impdp in Oracle 12c?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37053139/