java.sql.SQLException:[tibcosoftwareinc] [Oracle JDBC Driver] [Oracle] ORA-28040:没有匹配的身份验证协议

时间:2017-08-30 00:58:00

标签: database oracle oracle12c

尝试连接oracle 12c时出现上述错误。我尝试使用ojdbc6和ojdbc7 jar文件。我发现以下评论

------------------->

错误14575666

在12.1中,SQLNET.ALLOWED_LOGON_VERSION参数的默认值已更新为11.这意味着使用11g以前的JDBC瘦驱动程序的数据库客户端无法对12.1数据库服务器进行身份验证,除非将SQLNET.ALLOWED_LOGON_VERSION参数设置为旧的默认值8。

这将导致使用DBCA创建的10.2.0.5 Oracle RAC数据库因ORA-28040而失败:12.1 Oracle ASM和Oracle Grid Infrastructure环境中没有匹配的身份验证协议错误。

解决方法:在oracle / network / admin / sqlnet.ora文件中设置SQLNET.ALLOWED_LOGON_VERSION = 8。

< -------------------

由于我们共享了数据库,因此我有一个人需要实现上述解决方法。

如果我在oracle / network / admin / sqlnet.ora文件中设置SQLNET.ALLOWED_LOGON_VERSION = 8会影响其他用户吗?

它会影响共享应用程序及其功能吗?

1 个答案:

答案 0 :(得分:0)

在sqlnet.ora中设置SQLNET.ALLOWED_LOGON_VERSION = 8会影响到服务器的所有连接。您允许使用较旧版本的密码验证程序进行用户身份验证,它会影响所有用户。您不能仅允许一个用户使用它。但这不会破坏已经成功连接的其他应用程序。它将允许较旧的应用程序(使用旧驱动程序)进行连接。最好的解决方案是尽可能升级所有客户端,但此设置是解决方法,并且它可用于此目的。