Ошибка oracle ora 12638
сделали свое дело. Я еще не нашел никого с альтернативным исправлением. Вот как выглядит моя строка подключения:
Что касается моего кода на VB, он довольно простой.
У кого-нибудь есть идеи?
41 thoughts on “ Simple solution for ORA-12638: Credential retrieval failed ”
Thanks
It really worked and solved my problem 🙂
no problem, glad to help.
when change name
SQLNET.AUTHENTICATION_SERVICES= (NTS) and change it to
SQLNET.AUTHENTICATION_SERVICES= (NONE)
error come ORACLE NOT AVILABE please give me solution
if you are sure that oracle service is up (sometimes this message means that the service is not running) try to open the command line and type set oracle_sid=your_sid_name and than SQLPLUS and see if it works. It is possible that your oracle_sid parameter is not set.
I changed the NTS in the file and it worked. thank a lot.
that actually works
thx alot
Thanks a lot. It worked for me.
Did not work for me. Now getting ORA-01031: insufficient privileges
@Robert, what are you trying to do when you get the ora-01031? this message is shown when the user is trying to do something (create a table or a view for example) without the right permission.
This actually means that you are connected and it probably did work for you.
Thanks a lot. It worked.
I changed it to NONE but I am getting the same ORA-12638 error. What else is going on?
I have to add, I was trying to connect using sever explorer db connection in Visual Studio 2010 premium.
Verify that you are using the right oracle home. Try to change tnsnames and check that you are seeing the changed entry.
It solves my problem. But the performance decrease dramaticly
This is a client side solution. It shold have no effect on db performence. Verify that you are using the correct client version.
Thank you very much, god bless you for this valuable help.
Greeting from domincan republic.
It worked for me.. Thanks a lot!
It did work, thanks for the solution.
Thanks!
Just to clarify, this has to be done on the client machine. And restart Toad or whatever client application you are using
Thank you it’s perfect !
Thanks.. it worked for me..
Thanks a lot. Saved hell lot of time.
Wow!
A simple fix that actually fixes the issue in hand (I rarely find them these days)
5:00pm panic averted!
Thank you very much.Problem fixed in no time.Appreciate for posting this helpful tip.
By doing this you will not be able to use ‘sqlplus “/as sysdba” ‘ on the host.
This is a client solution. Why would affect the server?
Thanks, really appreciate this tip.
Thankyou this worked for me … (Changing to NONE) – Many Thanks
Thanks you so much this is very help for me. thanks once again!
Grazie,
I solved my problem 🙂
REALLY THANKS FOR GIVEN GOOD
It worked for me, thank you very much
it worked..Great. Thanks
Thank you very much. This works great on ORACLE 11G XE intalled on WINDOWS 8
6 ответы
Честно говоря, это одна из тех ошибок, которые могут быть вызваны множеством различных корневых проблем.
Предполагая, что вашим сервером базы данных является Windows, проверьте его журнал событий, как системы, так и приложения. Вы можете найти там что-нибудь полезное.
Я сталкивался с этой ошибкой в некоторых случаях, потому что учетная запись, под которой работала служба Oracle, была заблокирована.
Я также сталкивался с этим в тех случаях, когда мы никогда не находили объяснения, но мы всегда могли решить проблему, заблокировав и разблокировав свой компьютер.
Приложение VB работает на другом компьютере, чем клиент, который может подключиться? Если да, то можно ли протестировать с использованием другой клиентской программы на том же компьютере - или можно попробовать приложение VB на своем компьютере?
ответ дан 19 дек '08, 14:12
Я только что впервые столкнулся с проблемой, и блокировка / разблокировка помогли. Я работал с виртуальной машиной Windows XP, которая вышла из режима гибернации. Хост, на котором он работал, недавно запросил смену пароля, что могло быть причиной (хотя виртуальная машина использует другую учетную запись пользователя в другой (виртуальной) сети. Тим Мейер
Как узнать, какая учетная запись используется службой Oracle? Вы имеете в виду серверную службу или клиентскую службу? - Аурински
@Aurinxki Я имею в виду службу сервера баз данных. В Windows вы можете заглянуть в Службы и узнать, настроена ли служба для работы в определенной учетной записи; или, возможно, используйте такой инструмент, как Process Explorer, чтобы найти запущенный процесс и посмотреть, в какой учетной записи он запущен. В Linux или Unix вы можете использовать ps для просмотра процессов. - Дейв Коста
Я знаю, что это очень старый пост, но я нашел решение, которое сработало для меня (устаревшее приложение VB6):
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
How to solve it?
I hope you don’t have too many clients.
You will need to set this in your client-side sqlnet.ora :
Then everything should work as it has been worked before.
Further Questions?
As many of you commented already, I have not more information about this issue – and especially no further advice. I would like to ask you to open SRs and check with Oracle Support for further guidance as I don’t have the chance to test with all the different client options and possibilities. Thanks!
If the Oracle client was installed using the domain administrator account instead of the local administrator, the following message could be displayed when trying to connect:
ORA-12638: Credential retrieval failed
From the wording of the error message one could think that this error means that he is using the wrong password but this is not the case. To solve this:
1) Go to /oracle home/network/admin and open sqlnet.ora
2) Search for SQLNET.AUTHENTICATION_SERVICES= (NTS) and change it to
SQLNET.AUTHENTICATION_SERVICES= (NONE)
3) Save the file and try to connect, this should work
Comments
This is an Oracle database error, indicating that the Designer client was not able to connect to the database. Are you able to connect to the same database using SQL*Plus installed in the same ORACLE home as Designer?
Restart your database services if you are using Oracle on Windows.
Simply restarting the service doesn't help - same behaviour to me once in two weeks.
The only thing that works is restarting the machine. Check if you use NTS authentication.
Could be that you have problems with the domain controller/active directory that
can cause in such authentication failures.
Just to workaround this problem (in the case of this authentication method) you
can create a local os user, add him to ORA_DBA group and start your oracle
client in the context of this local user ("runas").
No other idea to solve this problem. I'm sure when the system is well configured,
then there is one process which has lost communication with the authentication
service.
Please check the sqlnet.ora file. Change the following entry and try, this will work.
Original Entry - SQLNET.AUTHENTICATION_SERVICES= (NTS)
Modified Entry - SQLNET.AUTHENTICATION_SERVICES= (NONE)
It's great. But could you please let me know the difference between 'NTS' and 'NONE'. Does it impact elsewhere?
I'm no Oracle expert, but from what can make out the NTS option makes the Oracle client attempt to use your current Windows domain credentials to authenticate you with the Oracle server. This could fail for a couple of reasons:
- The Oracle server is not configured to support Windows authentication
- The credentials you use to login to your local machine are not sufficient to allow you to login to the server.
In my case, it was the later. Despite the fact that I had told the client to use a different user name and password, it was still attempting to login using my domain credentials first. This failed because I was logged on to my local machine using my normal domain credentials rather than my administrator account.
Replacing the line:
in sqlnet.ora resolved the issue by disabling local support for authenticating using Windows credentials.
Теперь описание ситуации:
На одном клиентском месте установлен Oracle client 11g Release 2 (11.2.0.4) for Microsoft Windows (32-Bit)
С этого клиентского места настроен доступ к 6-ти базам.
С недавнего времени, при попытке подключиться к одной из баз через PL/SQL Developer ver.7.0 на этапе аутентификации пользователя возникает ошибка:
ORA-12638: Credential retrieval failed.
Подключаюсь под пользователем "PARUS", в режиме "normal". (хотя и под SYS as SYSDBA ошибка та же).
К другим базам подключается нормально, без ошибок.
Проблема возникает при подключении к базе "ROOCR2".
Возможно ли как-то "пофиксить" проблему, при условии, что я - далеко (даже ОЧЕНЬ ДАЛЕКО) _НЕ_ sysdba, а решать вопрос придется именно мне, и, судя по всему - в одиночку.
Ниже приведу содержимое некоторых файлов:
Содержимое файла tnsnames.ora:
MED8.ZAR =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.0.237)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = MED
)
)
LOBRA.LENS =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.0.234)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = LOBRA)
)
)
MED8.PRIV =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.0.243)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = MED
)
)
MED8.PROL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.0.233)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = MED
)
)
MED8.SOV =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.0.55)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = MED
)
)
ROOCR2.CENTR =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.0.219)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ROOCR2)
)
)
Содержимое файла sqlnet.ora:
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
Содержимое файла listener.ora:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\app\credos\product\11.2.0\dbhome_2)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:C:\app\credos\product\11.2.0\dbhome_2\bin\oraclr11.dll")
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = UOCBServer.UOCB.bux)(PORT = 1521))
)
)
You like unexpected changes and surprises, don’t you? And especially those which aren’t in the patch notes or the docs. I blogged about such changes a few weeks ago. And thanks to the people reading this blog, I learned now about another change with Oracle 19.10.0 on the Windows platform. You may receive now an ORA-12638 on Windows only from Oracle 19.10.0 onwards.
What has been changed?
So at first, thanks to Ernst and Marcus for bringing this to my attention. This is an issue which happens on MS Windows only.
When you have SQLNET.AUTHENTICATION_SERVICES=NTS in your sqlnet.ora , then you may see now ORA-12638: Credential retrieval failed when you for instance select over a database link. Or it happens simply when you try to connect from the client using sqlplus user/pw@servicename .
When you’d do a SQLnet trace, you would spot this message: NO_NTLM set, not local conn, not actively falling back to NTLM even if server might not support kerberos. And this points to the solution. NTLM is the Windows Networks LAN Manager authentication service. Access to it has been disabled by default due to a security fix. So NO_NTLM=TRUE is now the standard from 19.10.0 on for Windows systems.
Читайте также: