недостаточные привилегии SYS.DBMS_DDL - PullRequest
0 голосов
/ 09 октября 2018

Я пытаюсь использовать утилиту Oracle imp.Существует много хорошей документации, но кажется, что невозможно или не задокументировано, как импортировать ее с обычным пользователем.Предполагается, что будет использоваться sys, я думаю.Предоставьте привилегии, например, используя что-то вроде

GRANT execute ON sys.dbms_ddl TO myuser;

, что предлагается на некоторых сайтах, отличных от Oracle.Не работает.Ошибка остается прежней.

IMP-00003: ORACLE error 1031 encountered
ORA-01031: insufficient privileges
ORA-06512: at "SYS.DBMS_DDL", line 361

Какие гранты я должен выдать для авторизации пользователя для утилиты imp?

Импорт в качестве SYSTEM также не работает.У этого пользователя также нет прав на импорт.

[vagrant@jira ~]$ imp SYSTEM/oracle@jira file=/tmp/jira-oracle.dmp fromuser=jira touser=jira_restore

Import: Release 12.2.0.1.0 - Production on Tue Oct 9 12:24:09 2018

Copyright (c) 1982, 2017, Oracle and/or its affiliates.  All rights reserved.


Connected to: Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production

Export file created by EXPORT:V12.02.00 via conventional path
import done in AL32UTF8 character set and AL16UTF16 NCHAR character set
IMP-00003: ORACLE error 942 encountered
ORA-00942: table or view does not exist
IMP-00023: Import views not installed, please notify your DBA
IMP-00000: Import terminated unsuccessfully

Кто-нибудь использовал эти утилиты с некоторым успехом?Я не думаю, что они официально поддерживаются Oracle.

Они отправлены Oracle достаточно странно.На веб-сайте Oracle

Мгновенные клиентские инструменты предоставляют утилиты exp / imp начиная с версии 12.2.0.1.0.Доступна неограниченная загрузка

Но также на веб-сайте документации Oracle

Оригинальный экспорт не поддерживается для общего использования с Oracle Database 11g

Похоже, что это может быть и другое: распространять инструменты, но не поддерживать их!

Так что я прихожу к выводу здесь.Простой экспорт / импорт схемы не так прост, если вообще возможен при использовании Oracle.Вопреки сделанным заявлениям.

1 Ответ

0 голосов
/ 09 октября 2018

Возможно, файл, который вы пытаетесь импортировать, содержит объекты, для которых у вас нет прав на создание / изменение.

попробуйте это:

GRANT IMP_FULL_DATABASE TO myuser;

или запустите утилиту IMP как пользователь SYSTEM (не SYS, а SYSTEM).

...