Oracle 11g。即使创建了架构,也无法导入转储文件

时间:2012-07-07 18:55:47

标签: oracle oracle11g

我使用以下脚本

在Oracle 11gR2中创建了一个用户
create user          cata
identified by        cata
default   tablespace tbs
temporary tablespace temp;

grant DBA to cata;

尝试使用命令

导入转储文件后
impdp system/password@ORCL11 schemas=cata dumpfile=cata.dmp logfile=log.txt

我收到以下错误

ORA-39002:操作无效 ORA-39165:未找到架构ATGDB_CATA。

令人惊讶的是,当我尝试从同一模式导出转储时,我能够做到这一点。因此,如果架构未正确创建,那么我也不能导出转储文件,对吧?

我还检查了dba_users&架构已创建。还有什么我可以做的,可以解决这个问题

3 个答案:

答案 0 :(得分:10)

在错误消息中,我猜原始模式名称是“atgdb_cata”。

当您现在尝试导入名为“cata”的模式时,您需要指定参数remap_schema

所以对你的情况: impdp system/password@ORCL11 schemas=atgdb_cata dumpfile=cata.dmp logfile=log.txt remap_schema=atgdb_cata:cata

答案 1 :(得分:0)

将您创建的目录上的读写角色授予新用户:EX:

GRANT READ, WRITE ON DIRECTORY dir_name TO NEW_USER:

还向新用户授予以下角色:

GRANT IMP_FULL_DATABASE TO NEW_USER;

谢谢! NC

答案 2 :(得分:0)

ORA-39002:无效操作 ORA-39070:无法打开日志文件。 ORA-29283:文件操作无效 ORA-06512:at" SYS.UTL_FILE",第536行 ORA-29283:文件操作无效

解: 创建或替换目录test_ dir为' FOLDER_NAME' ;

' FOLDER_NAME'必须有该转储文件

步骤:1 在orcle_installed_pa​​th / sql / SAMPLE下创建文件夹SAMPLE 将该转储文件放入该SAMPLE文件夹中。

转到bin并执行./sqlplus 并登录 SQL>创建或替换目录test_dir为' SAMPLE' ;

SQL> SQL> GRANT READ,WRITE在目录test_dir上写入' USER';

SQL>将IMP_FULL_DATABASE授予' USER&#39 ;; 出口 然后impdb导入转储