Ошибка связанного сервера Oracle: ORA-12640: сбой инициализации адаптера аутентификации - PullRequest
1 голос
/ 15 апреля 2010

У меня есть связанный сервер на SQL Server, который общается с Oracle. Выполнение следующего оператора sql с использованием Openquery

 SELECT * FROM OPENQUERY(finance, 'select * from KFRI.VW_XREF_PROJECTS')

получит ошибку как следующее:

OLE DB provider "OraOLEDB.Oracle" for linked server "finance" returned message "ORA-12640: Authentication adapter initialization failed".
Msg 7303, Level 16, State 1, Line 1
Cannot initialize the data source object of OLE DB provider "OraOLEDB.Oracle" for linked server "finance".

Я пытался установить:

SQLNET.AUTHENTICATION_SERVICES= (NONE)

в {$ ORACLE_HOME} \ NETWORK \ ADMIN \ sqlnet.ora. Это не помогло.

Что интересно, мой коллега может без проблем выполнить точно такой же запрос на своей машине.

Любые советы о том, как это исправить, приветствуются !!

Ответы [ 3 ]

1 голос
/ 27 апреля 2010

В дополнение к тому, что уже было сказано, проверьте сетевой журнал {$ ORACLE_HOME} \ NETWORK \ log, чтобы увидеть, есть ли какая-либо дополнительная информация в списке. Также вы можете также включить трассировку sqlnet, добавив следующие строки в sqlnet.ora

trace_level_client=16 
trace_file_client=cli 
trace_directory_client=c:\temp 
trace_unique_client=true 
trace_timestamp_client=ON 

Также попробуйте прокомментировать наш SQLNET.AUTHENTICATION_SERVICES = (NONE) и посмотрите, поможет ли это. Убедитесь, что используемая вами версия ODAC совпадает с версией на сервере. Проверьте переменные среды Oracle и убедитесь, что все там и правильно.

Выше

http://www.dbforums.com/oracle/1615519-enough-ora-12640-please-help.html http://p2p.wrox.com/archives/oracle/2002-07/35.php

1 голос
/ 23 апреля 2010

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

Если вы оба заходите на SQL Server для выполнения вашего запроса, вам нужно посмотреть, как ваш связанный сервер настроен на обработку аутентификации. Он проходит через ваши учетные данные (убедитесь, что у вас есть разрешения для Oracle), или он использует набор учетных данных Oracle? Если он использует учетные данные Oracle, то я понятия не имею, что происходит.

Если у вас и вашего коллеги установлен SQL Server на соответствующих локальных компьютерах, и вы оба создали связанный сервер, вам следует проверить драйвер Oracle, затем проверить свои разрешения в Oracle и убедиться, что те же файлы .ora.

0 голосов
/ 28 апреля 2010

Вместо изменения файла sqlnet.ora попробуйте перезаписать его файлом коллеги sqlnet.ora (на всякий случай сохраните свою резервную копию). Для справки (но уже отмечен в вашем вопросе) файл можно найти здесь ...

{$ ORACLE_HOME} \ NETWORK \ ADMIN \ sqlnet.ora

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...