本地oracle客户端用PLSQL Developer连接远程数据库,每次登录都会在很久之后,出现 ORA-12638: 身份证明检索失败,tnsping 表明TNS配置没有问题。
解决方案:
方法一:
D:\app\sabre\product\11.2.0\client_1\NETWORK\ADMIN
此目录下找到sqlnet.ora文件,如果存在SQLNET.AUTHENTICATION_SERVICES= (NTS)设置,则修改为:SQLNET.AUTHENTICATION_SERVICES= (NONE),如果不存在,则直接添加SQLNET.AUTHENTICATION_SERVICES= (NONE),我的问题得以解决。
SQLNET.AUTHENTICATION_SERVICES 表示oracle使用哪种验证方式,NTS表示采用本地操作系统认证,NONE表示将采用口令文件方式认证。设定了none后,本地的操作系统认证将不被许可,oracle将采用口令文件认证(此时 remote_login_passwordfile=exclusive)如connect /as sysdba 登录,后报错RA-01031: insufficient privileges,实际上是要求你输入sysdba的用户名和密码
方法二:
解决方法如下:
操作安装oracle服务器
开始 -> 程序 -> Oracle -> Configuration and Migration Tools(配置和移植工具) -> Net Manager
启动后:
本地→概要文件→Oracle高级安全性→验证→去掉所选方法中的 "NTS" 就可以了。
本文介绍了两种方法解决Oracle PLSQL Developer连接远程数据库时遇到的ORA-12638错误。方法一是修改sqlnet.ora文件,将SQLNET.AUTHENTICATION_SERVICES设置为(NONE);方法二是通过NetManager取消NTS验证方法。这两种方法有助于解决由于身份证明检索失败导致的连接问题。
1184

被折叠的 条评论
为什么被折叠?



