使用impdp在Oracle中导入转储文件

使用impdp在Oracle中导入转储文件,oracle,datapump,impdp,Oracle,Datapump,Impdp,我在Oracle 11g中使用impdp时遇到了麻烦。我正在阅读文档,但仍然遗漏了一些要点 我创建了一个测试数据库,以及orcl数据库的oracle_主页。我从orcl dabase创建了目录/home/oracle,并将该目录上的读写权限授予hr用户,我想导出该模式。导出成功。然后,我从orcl数据库退出sql提示符,更改oracle_sid(.oraenv和type test_数据库),然后执行 impdp scott/scott directory=dump\u dir dumpfile=

我在
Oracle 11g
中使用
impdp
时遇到了麻烦。我正在阅读文档,但仍然遗漏了一些要点

我创建了一个测试数据库,以及orcl数据库的oracle_主页。我从orcl dabase创建了目录/home/oracle,并将该目录上的读写权限授予hr用户,我想导出该模式。导出成功。然后,我从orcl数据库退出sql提示符,更改oracle_sid(.oraenv和type test_数据库),然后执行

impdp scott/scott directory=dump\u dir dumpfile=hr.emp
它不工作

我错过了什么?我只想从orcl数据库中的hr用户导出hr模式,然后 从测试数据库将其导入scott用户


谢谢。

目录对象是数据库的本地对象;在一个数据库中创建它不会使其他数据库可用,即使它们共享一个
ORACLE\u HOME

在运行
impdp
之前,您需要在
test
数据库中重复您的命令:

CREATE DIRECTORY dump_dir AS /home/orcl;
GRANT read, write ON dump_dir TO hr;

您的导入命令也可能有错误;转储文件可能是
hr.dmp
,而不是
hr.emp

“它不工作”是什么意思?您得到了什么错误?您是否在两个数据库中都创建了
目录
对象?