Пакет ORDS_INTERNAL не может быть скомпилирован во время / после установки ORDS 19.0.4

В одной из наших баз данных oracle 11g мы получаем следующую ошибку во время установки ORDS 19.4.0.

[*** скрипт: ords_internal.plb]

Package Body ORDS_INTERNAL compiled

LINE/COL  ERROR
--------- -------------------------------------------------------------
129/7     PL/SQL: SQL Statement ignored
134/9     PL/SQL: ORA-00942: table or view does not exist

поскольку источник пакета упакован, мы не смогли получить имя объекта, вызывающего эту ошибку.

Что я могу решить или узнать, почему я получаю эту ошибку?

2 ответа

Хорошо , мы решили это. Сначала мы проверили статус всех используемых объектов по телу пакета ORDS_INTERNAL и не нашли объекта, который является INVALID. Затем проверьте гранты всех зависимостей и убедитесь, что кто-то / кто-то удалил грант SELECT для ALL_USERS из PUBLIC. исправление (предоставить выбор для sys.ALL_USERS общедоступным) эта проблема решила нашу проблему компиляции...

Я думаю, что из-за того, что вы используете Oracle 11g в качестве базы данных, вы должны запустить сценарий, упомянутый @pifor

Вот что говорит Oracle doc

Начиная с версии ORDS 19.2, архивный файл установки Oracle REST Data Services содержит сценарий ords_installer_privileges.sql, который находится в папке установщика. Сценарий предоставляет назначенному пользователю базы данных права на установку, обновление, проверку и удаление ORDS в Oracle Pluggable Database или Oracle 11g.

Итак, запустите это

Подключитесь к базе данных Oracle 11g с привилегиями SYSDBA. Выполните следующий сценарий, указав пользователя базы данных, который будет использовать ORDS.

SQL> @/path/to/installer/ords_installer_privileges.sql exampleuser

Я думаю, было бы менее проблематично, если бы вы выбрали старую версию ORDS, поскольку у вас очень старая версия базы данных.

С уважением

Другие вопросы по тегам