Назад | Перейти на главную страницу

Проблема сосуществования Oracle Ordcom и кошелька

Мы используем инфраструктуру Oracle ORDCOM в нашей базе данных 11.1.0.7 для взаимодействия с COM-объектом. COM-объект ничего не делает с базой данных. Этот процесс отлично работает уже несколько лет.

Сегодня я создал Oracle Wallet и добавил учетные данные для sys, чтобы имеющийся у меня сценарий мог войти в систему с использованием «/ @ coredev as sysdba», а не хранить имя пользователя и пароль в виде открытого текста.

Проблема в том, что как только я добавил строку «SQLNET.WALLET_OVERRIDE = TRUE» в файл sqlnet.ora, вызов ORDCOM OACreate вызывает ошибку протокола ORA-28578: во время обратного вызова из внешней процедуры. У меня есть программа вне базы данных, которая может тестировать COM-объект и продолжает работать правильно. Как только я закомментирую строку в sqlnet.ora, все работает правильно, но, конечно, я больше не могу использовать кошелек.

Oracle воспроизвела эту проблему с помощью внутреннего тестового примера и создала для нее ошибку. Обходной путь - использовать отдельный файл sqlnet.ora / tnsnames.ora для кошелька, задав для переменной среды TNS_ADMIN путь к альтернативным файлам.