2017-02-21 12 views
0

Я создал каталог:ошибки на подпорки импорта

SQL> create or replace directory dir as '/home/oracle12c/Desktop/latest_exp.dmp'; Я пытаюсь запустить импорт, так как SYSDBA:

impdp \'/as sysdba\' full=Y directory=dir dumpfile=importDump.dmp logfile=import.log; 

я получаю эти ошибки:

Connected to: Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production 
With the Partitioning, OLAP, Advanced Analytics, and Real Application Testing options 
ORA-39002: invalid operation 
ORA-39070: Unable to open the log file. 
ORA-29283: invalid file operation 
ORA-06512: at "SYS.UTL_FILE", line 536 
ORA-29283: invalid file operation 

Насколько я вижу из результатов поиска, это касается разрешений. Пользователь Oracle должен владеть файлами. Разрешение на файл я пытаюсь импортировать выглядит следующим образом:

-rw-r--r-- 1 oracle12c root 2201247744 Feb 21 16:51 latest_exp.dmp 

Что моя проблема здесь, и как его преодолеть? Есть ли проблема, когда владельцем файла является oracle12? Некоторые решения в Интернете говорят, что файлы должны принадлежать пользователю, пытающемуся получить доступ к файлам, которые в моем случае являются sysdba. Но я не могу поменять владельца на свой файл как sysdba, так как этот пользователь не существует на моем Ubuntu.

Также мы указываем файл dumfile и logfile, но мы не укажем его местоположение. Где он будет создавать места для этого? Я предположил, что он будет искать их здесь: /u01/app/oracle/oradata/orcl$ где orcl - мой SID

Я не смог решить свою проблему с помощью Google и Oracle Doc. Любая помощь приветствуется.

Я бегу по Ubuntu.

ответ

2

Объект каталога Oracle должен указывать на каталог операционной системы, а не на файл; вместо:

create or replace directory dir as '/home/oracle12c/Desktop/latest_exp.dmp' 

это должно быть просто:

create or replace directory dir as '/home/oracle12c/Desktop' 

Свалка файл должен сидеть в этом каталоге, и по умолчанию будет создан журнал и плохие файлы там тоже.

В настоящий момент вы просите его создать файл журнала под каталогом /home/oracle12c/Desktop/latest_exp.dmp, то есть /home/oracle12c/Desktop/latest_exp.dmp/import.log - что явно не является допустимым полным путем; а также искать файл importDump.dmp под этим не-каталогом.

Ваша командная строка выглядит, как это имеет неправильное имя так или иначе:

impdp ... directory=dir dumpfile=latest_exp.dmp logfile=import.log 
Смежные вопросы