Sam*_*Sam 4 oracle import datapump oracle12c
当我在Oracle 12c SE2中运行此命令时:
impdp system/Oracle_1@pdborcl directory=DATA_PUMP_DIR dumpfile=mydb.dmp nologfile=Y
Run Code Online (Sandbox Code Playgroud)
我得到这个:
ORA-39001:无效的参数值
ORA-39000:错误的转储文件规范
ORA-39088:目录名称DATA_PUMP_DIR无效
我们过去一直将其导入11g。
我该如何解决这些错误?
使用数据泵将数据移入CDB时,请注意以下要求:
...
- 默认的数据泵目录对象DATA_PUMP_DIR不适用于PDB。您必须在要导出或导入的PDB中定义一个显式目录对象。
您将需要在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;
Run Code Online (Sandbox Code Playgroud)
它可以是DATA_PUMP_DIR指向的同一操作系统目录,您只需要一个单独的目录对象。但是,我从上一个问题的评论中使用了您说的更喜欢的方式。
然后将导入修改为:
... DIRECTORY=my_data_pump_dir DUMPFILE=mydb.dmp
Run Code Online (Sandbox Code Playgroud)