Ora 12638 сбой при извлечении реквизитов при создании базы

сбой при извлечении реквизитов

  • Автор темы

    Orion

  • Дата начала

    24.05.2018

  • #1

Здравствуйте, не могу соединиться с бд oracle 11g из оснастки Oracle administration assistant for win. Вылезает сообщение

ora-12638 сбой при извлечении реквизитов

Оснастка открыта с самого сервера БД. Подключаюсь от имени пользователя SYSDBA. У кого какие идеи?

image_154.png

  • #2

Так не прокатит.

Пробовал вводить пароль?
Пробовал вводить правильный пароль?

  • #3

Здравствуйте, не могу соединиться с бд oracle 11g из оснастки Oracle administration assistant for win. Вылезает сообщение
Оснастка открыта с самого сервера БД. Подключаюсь от имени пользователя SYSDBA. У кого какие идеи?

Посмотреть вложение 146

Поищи по этой ошибке еще — тоже самое только на ин яз.

Код:

TNS-12638: Credential retrieval failed

Вообще пароль неверный похоже или логин

  • На данном сайте используются cookie-файлы, чтобы персонализировать контент и сохранить Ваш вход в систему, если Вы зарегистрируетесь.
    Продолжая использовать этот сайт, Вы соглашаетесь на использование наших cookie-файлов.

I have a legacy VB6 application which I’ve inherited. The issue I’m facing is that I’m getting the infamous

ORA-12638: Credential retrieval failed

error message whenever it tries to connect to one of our Oracle databases. I can connect fine from SQLPlus and Toad, however. I’ve Googled around and everyone seems to say that modifying their sqlnet.ora file to

SQLNET.AUTHENTICATION_SERVICES=(NONE)

did the trick. I have yet to find anyone with an alternative fix. Here is what my connection string looks like:

"PROVIDER=OraOLEDB.Oracle;DATA SOURCE=(DESCRIPTION = " & _
"(ADDRESS = (PROTOCOL = TCP)(HOST = server1)
(PORT = 1521))" & _
"(ADDRESS = (PROTOCOL = TCP)(HOST = server2)
(PORT = 1521))" & _
"(LOAD_BALANCE = yes) " & _
"(CONNECT_DATA = " & _
"(SERVER = DEDICATED) " & _
"(SERVICE_NAME = database_name_here) " & _
") " & _
"); " & _
"User Id=username_here;Password=password_here;"

As for my VB code, it’s quite simple.

Private oracleDatabaseConnection As ADODB.Connection

Set oracleDatabaseConnection = New ADODB.Connection
oracleDatabaseConnection.Open oracleConnectionString

Anyone have any ideas?

Thank you. :)

asked Dec 18, 2008 at 20:37

Mike's user avatar

I know this is a very old post but I have found a solution that has worked for me (Legacy VB6 Application):

Change the following entry in the sqlnet.ora file:

Original Entry - SQLNET.AUTHENTICATION_SERVICES= (NTS)

Modified Entry - SQLNET.AUTHENTICATION_SERVICES= (NONE)

Here is a LINK to the solution

answered Jun 13, 2012 at 16:20

Mark Kram's user avatar

Mark KramMark Kram

5,6267 gold badges50 silver badges70 bronze badges

2

Honestly this is one of those errors that can be caused by lots of different root problems.

On the assumption your database server is Windows, check its event log, both System and Application. You may find something there that is useful.

I have encountered this error in some cases because the account under which the Oracle service was running got locked.

I have also encountered it in cases where we never found the explanation, but we were always able to clear up the issue by having the user lock and unlock their PC.

Is the VB application running on a different machine than the client that can connect? If so, is it possible to test using a different client program on the same machine — or is it possible to try the VB application on your machine?

answered Dec 19, 2008 at 14:25

Dave Costa's user avatar

Dave CostaDave Costa

46.9k8 gold badges56 silver badges71 bronze badges

3

Know it’s an old question but it has started appearing with the recent Windows update.
The way to easily solve it is to set

SQLNET.AUTHENTICATION_SERVICES= (NONE)

in the sqlnet.ora.

answered May 21, 2018 at 14:21

Manulak's user avatar

ManulakManulak

1172 silver badges9 bronze badges

If you are running a web app under IIS, restarting IIS seem to help. But this is one sucker of an issue that has not much reasoning behind.

answered Jan 20, 2010 at 21:48

user209612's user avatar

user209612user209612

111 silver badge1 bronze badge

I installed Oracle Database 11g Express Edition 32-bit on Windows 10 professional 64-bit (spanish edition).

After restart PC all works ok.
But the next day I get error using SQL*PLus and SQLTools 1.9 build 15:

 ORA-12638: Credential retrieval failed

I modified the sqlnet.ora file so:

SQLNET.AUTHENTICATION_SERVICES= (NONE)

and now I can connect using SQLPlus, SQLTools 1.9 build 15.

answered Nov 28, 2018 at 17:32

alvalongo's user avatar

alvalongoalvalongo

5233 silver badges11 bronze badges

If using IIS and for a VB app, it may help to create a new Data Source in the ODBC manager and referencing it by name (instead of by provider) in the connection string.

For example, if the name for the Data Source is «test_ds», I would replace

ObjConn.open "Provider=MSDAORA;User ID=myuser;password=mypassword;Data Source=MYDATASOURCEFROMTNSNAMES;Persist Security Info=False"

for

ObjConn.open "dsn=test_ds;pwd=mypassword"

Can’t really explain the logic behind the solution, but it worked for me.

answered Jan 18, 2021 at 18:36

Aurinxki's user avatar

AurinxkiAurinxki

1013 silver badges5 bronze badges

Note also that Windows client connections can fail with this error, when using Windows Hello login.

Whatever windows authentication for a connect like:
sqlplus un/pw@Dev

failed with ora-12638, when I logged into my laptop with Face recognition (ie. using Hello)
To get around this, either set SQLNET.AUTHENTICATION_SERVICES = (NONE)
or just login with your tradition windows username and password.

answered May 12, 2022 at 6:23

aliT's user avatar

у меня есть унаследованное приложение VB6, которое я унаследовал. Проблема, с которой я сталкиваюсь, заключается в том, что я получаю печально известный

ORA-12638: Credential retrieval failed

сообщение об ошибке при попытке подключения к одной из наших баз данных Oracle. Однако я могу подключиться отлично от SQLPlus и Toad. Я погуглил вокруг, и все, кажется, говорят, что изменение их sqlnet.Ora файл к

SQLNET.AUTHENTICATION_SERVICES=(NONE)

сделал свое дело. Я еще не нашел никого с альтернативным решением. Вот как выглядит моя строка подключения например:

"PROVIDER=OraOLEDB.Oracle;DATA SOURCE=(DESCRIPTION = " & _
"(ADDRESS = (PROTOCOL = TCP)(HOST = server1)
(PORT = 1521))" & _
"(ADDRESS = (PROTOCOL = TCP)(HOST = server2)
(PORT = 1521))" & _
"(LOAD_BALANCE = yes) " & _
"(CONNECT_DATA = " & _
"(SERVER = DEDICATED) " & _
"(SERVICE_NAME = database_name_here) " & _
") " & _
"); " & _
"User Id=username_here;Password=password_here;"

что касается моего кода VB, это довольно просто.

Private oracleDatabaseConnection As ADODB.Connection

Set oracleDatabaseConnection = New ADODB.Connection
oracleDatabaseConnection.Open oracleConnectionString

у кого-нибудь есть идеи?

спасибо. :)

4 ответов


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

в предположении, что ваш сервер баз данных-Windows, проверьте его журнал событий, как систему, так и приложение. Вы можете найти там что-нибудь полезное.

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

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

работает ли приложение VB на другом компьютере, чем клиент, который может подключиться? Если да, можно ли протестировать с помощью другой клиентской программы на том же компьютере-или можно попробовать приложение VB на вашем компьютере?


Я знаю, что это очень старый пост, но я нашел решение, которое сработало для меня (приложение Legacy VB6):

измените следующую запись в sqlnet.файл ora:

Original Entry - SQLNET.AUTHENTICATION_SERVICES= (NTS)

Modified Entry - SQLNET.AUTHENTICATION_SERVICES= (NONE)

здесь ссылке к решению


знаю, это старый вопрос, но он начал появляться с недавнего обновления Windows.
Способ легко решить это установить

SQLNET.AUTHENTICATION_SERVICES= (NONE)

в заменить sqlnet.Ора.


Если вы используете веб-приложение под IIS перезапуск не помогают. Но это одна из проблем, которая не имеет много аргументов.


image.png

 

Локальный клиент Oracle подключает удаленную базу данных с разработчиком PLSQL. После того, как вы входите в течение длительного времени, ORA-12638: Ошибка поиска идентификации, TNSPPY указывает, что конфигурация TNS не проблема.

решение:

Метод один:

D:appsabreproduct11.2.0client_1NETWORKADMIN

Найдите файлы SQLNET.ORA в этом каталоге, если есть настройка SQLNET.Authenticate_Services = (NTS), измените: sqlnet.authentication_services = (нет), если нет, добавьте sqlnet.authenticent_services = (нет), мой вопрос решен.

SQLNET.Authenticate_Services Указывает, какой метод аутентификации, используемый в Oracle, NTS представляет собой локальную аутентификацию системы операционной системы, никто не указывает, что файл паролей будет сертифицирован. После настройки нет, аутентификация локальной операционной системы не будет лицензирована, Oracle будет использовать аутентификацию пароля (это время_login_Passwordfile = Exclusive), таких как Connect / AS Sysdba, и сообщает об ошибке RA-01031: недостаточная привилегия, на самом деле спрашивая вас ввести имя пользователя SYSDBA и пароль

Метод два:

Решение выглядит следующим образом:

    Операция Установка Oracle Server 

                 Start -> Программа -> Oracle -> Инструменты настройки и миграции -> Net Manager 

         После начала: 

                 Local → Профиль → Oracle Advanced Security → Проверка → Удалить «NTS» в выбранном методе.

Старый
16.08.2011, 19:59

 

#1
 

—————-

Лучший по профессии 2014

Лучший по профессии AXAWARD 2013

 

Регистрация: 15.01.2002

Адрес: Москва

Записей в блоге: 7

Oracle11g vs Win2008R2RUS


Коллеги, а есть ли у кого-нибудь работающий Oracle11g на серваке Win2008R2 RUS x64 для нужд Dynamics AX 2009 (или DAX4)?
Замучила ORA-12638: Credential retrieval failed


Последний раз редактировалось Wamr; 16.08.2011 в 20:02.

Старый
16.08.2011, 20:12

 

#2
 

Ищущий знания…

 

Регистрация: 18.01.2005

Адрес: Москва

Вот тут про это пишут. Вроде даже решается проблема

__________________
«Страх перед возможностью ошибки не должен отвращать нас от поисков истины.» (с)
С Уважением,
Елизаров Артем

Старый
16.08.2011, 20:16

 

#3
 

Ищущий знания…

 

Регистрация: 18.01.2005

Адрес: Москва

Вот тут тоже пишут про это, но решение немного другое:

Цитата:

После установки приложения при построении любого отчета или формы просмотра выдается ошибка: ORA-12638: Credential retrieval failed
Найти на сервере приложений в каталоге, где установлено клиентское программное обеспечение Oracle, файл sqlnet.ora.
В файле найти строчку:
SQLNET.AUTHENTICATION_SERVICES = (NTS)
и заменить ее на:
#SQLNET.AUTHENTICATION_SERVICES = (NTS)

__________________
«Страх перед возможностью ошибки не должен отвращать нас от поисков истины.» (с)
С Уважением,
Елизаров Артем

Старый
16.08.2011, 20:34

 

#4
 

—————-

Лучший по профессии 2014

Лучший по профессии AXAWARD 2013

 

Регистрация: 15.01.2002

Адрес: Москва

Записей в блоге: 7

То есть ты хочешь сказать, что я за полдня не нашел ни одного подобного ответа
Напомню для нужд Dynamics AX 2009 (или DAX4), а как ты помнишь, наверное, Аксапта в этих версиях признает только виндовс авторизацию-аутентификация, так что вариант с NONE не про нас.


Последний раз редактировалось Wamr; 16.08.2011 в 20:37.

Старый
16.08.2011, 23:36

 

#5
 

Ищущий знания…

 

Регистрация: 18.01.2005

Адрес: Москва

Цитата:

Сообщение от Wamr
Посмотреть сообщение

То есть ты хочешь сказать, что я за полдня не нашел ни одного подобного ответа
Напомню для нужд Dynamics AX 2009 (или DAX4), а как ты помнишь, наверное, Аксапта в этих версиях признает только виндовс авторизацию-аутентификация, так что вариант с NONE не про нас.

Рискнул поделиться теми знаниями, что были в закромах, а вдруг…

Про виндовс авторизацию забыл…

__________________
«Страх перед возможностью ошибки не должен отвращать нас от поисков истины.» (с)
С Уважением,
Елизаров Артем

Старый
17.08.2011, 09:45

 

#6
 

Участник

Самостоятельные клиенты AX
Oracle

 

Регистрация: 09.11.2006

Адрес: Краснодарский край

__________________
Axapta 3.0 sp — хз какой, kr2

Старый
19.08.2011, 14:33

 

#7
 

Модератор

 

Регистрация: 17.02.2005

Адрес: msk

Записей в блоге: 34

Post
Вариант решения проблемы ORA-12638


Цитата:

Сообщение от Wamr
Посмотреть сообщение

….
Напомню для нужд Dynamics AX 2009 (или DAX4), а как ты помнишь, наверное, Аксапта в этих версиях признает только виндовс авторизацию-аутентификация, так что вариант с NONE не про нас.

Если всё таки аутентификация через Windows нужна:
http://itkbase.ru/wiki/ora_12638

__________________

This posting is provided «AS IS» with no warranties, and confers no rights.

Старый
22.08.2011, 13:55

 

#8
 

—————-

Лучший по профессии 2014

Лучший по профессии AXAWARD 2013

 

Регистрация: 15.01.2002

Адрес: Москва

Записей в блоге: 7

egorych, спасибо, читал. Вроде все настройки соответствуют описанным.

Poleax, спасибо. Там, конечно, есть полезная информация, однако, по теме все сводится к перезагрузке сервера, что не помогает.

Цитата:

При создании базы данных Oracle 10g на этапе Create and starting Oracle instance вылезает ошибка ORA-12638: Сбой при извлечении реквизитов.
1. Настройка типа авторизации
2. Установка параметров безопасности БД (wamr: как можно настроить параметры того, что не создано?)
3. Перезапуск сервера БД
4. Проверка применения новых настроек (wamr: проверить = попробовать создать БД — получаем исходную ошибку)
5. Создание пользователя БД, соответствующего пользователю Active Directory

Старый
22.08.2011, 16:22

 

#9
 

Модератор

 

Регистрация: 17.02.2005

Адрес: msk

Записей в блоге: 34

?


Цитата:

Сообщение от Wamr
Посмотреть сообщение

2. Установка параметров безопасности БД (wamr: как можно настроить параметры того, что не создано?)

Есть параметры безопасности по умолчанию при установке Oracle
Там всего лишь просят выполнить скрипт

PHP код:



alter system set os_authent_prefix='' scope=spfile;

alter system set remote_os_authent=FALSE scope=spfile




Все это уже проделано с БД Аксапты?

__________________

This posting is provided «AS IS» with no warranties, and confers no rights.

Старый
26.08.2011, 16:21

 

#10
 

—————-

Лучший по профессии 2014

Лучший по профессии AXAWARD 2013

 

Регистрация: 15.01.2002

Адрес: Москва

Записей в блоге: 7

Цитата:

Все это уже проделано с БД Аксапты?

При создании базы данных … то есть нет базы.. совсем нет.

Итог:
На Win2008R2 ENG Oracle с параметром SQLNET.AUTHENTICATION_SERVICES = (NTS) работает без вопросов.

За это сообщение автора поблагодарили: Poleax (1).

459367Oct 10 2005 — edited Apr 8 2009

i’m installing Oracle Designer and when i test the concetion before the instalation finish. this error ocurred.

«ora-12638 credential retrieval failed»

Someone can help me!

thanks for while

Вопрос:

в файле sqlnet.ora:

когда у меня SQLNET.AUTHENTICATION_SERVICES = (NTS)

i не может подключиться разработчиком PL/SQL, возникает ошибка “ORA-12638 Ошибка получения учетных данных”
, но может подключиться по командной строке

когда у меня SQLNET.AUTHENTICATION_SERVICES = (NONE)

i не может подключиться

>sqlplus / as sysdba

возникает “ORA-01031: недостаточные привилегии”

но может подключиться разработчиком PL/SQL и командной строкой, когда я укажу имя пользователя и пароль

Лучший ответ:

Администратор сервера может не настроить аутентификацию NTS в базе данных. Вы не можете просто попросить ваши учетные данные быть аутентифицированными NTS в файле клиента SQLNET.ORA без согласия на стороне сервера.

Ответ №1

Я столкнулся с той же проблемой.

Когда я внес изменения в
SQLNET.AUTHENTICATION_SERVICES= (NONE), чтобы разрешить извлечение учетных данных ORA-12638.

Тогда я не смог подключиться к привилегии sysdba.

ORA-01031: недостаточные привилегии, если sqlplus / as sysdba

Решение:

Я смог узнать, я все еще мог подключиться как sysdba со следующей командой:

Изнутри sqlplus:

connect sys as sysdba

Из командной строки:

sqlplus sys as sysdba

В обоих случаях вам будет предложено ввести пароль. Пароль будет таким же, как ваш пароль, который вы установили для пользователя SYSTEM во время установки Windows.

Теперь вы связаны с правами sysdba, которые вы пытались получить с помощью sqlplus / as sysdba.

Понравилась статья? Поделить с друзьями:

Другие крутые статьи на нашем сайте:

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии