ORA-28040: 未找到匹配的身份验证协议异常

19 浏览
0 Comments

ORA-28040: 未找到匹配的身份验证协议异常

我正在尝试将我的Grails项目连接到Windows(8)系统的Oracle数据库(Oracle 12c)。但是,每当我运行我的应用程序时,我都会得到以下异常:

Caused by: org.apache.commons.dbcp.SQLNestedException: 
Cannot create PoolableConnectionFactory (ORA-28040: 
No matching authentication protocol)
Caused by: 
java.sql.SQLException: ORA-28040: 
No matching authentication protocol

根据互联网建议,我还尝试编辑我的*.ora文件,但它不起作用。 我在sqlnet.ora文件中添加了以下代码块:

SQLNET.ALLOWED_LOGON_VERSION=10
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=10
SQLNET.ALLOWED_LOGON_VERSION_SERVER=10

这里我尝试分配(10,11,12),但它们中的任何一个都不起作用。 有谁能帮助我吗?

admin 更改状态以发布 2023年5月20日
0
0 Comments

experts-exchange上我找到了一些文本:

Bug 14575666

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

这将导致在12.1 Oracle ASM和Oracle Grid Infrastructure环境中,使用DBCA创建10.2.0.5 Oracle RAC数据库失败,并出现ORA-28040:无匹配身份验证协议错误。

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

0
0 Comments

我删除了 ojdbc14.jar 文件,改用 ojdbc6.jar,这样就可以使用了

0