我正在尝试将我的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
Run Code Online (Sandbox Code Playgroud)
)
SQLNET.ALLOWED_LOGON_VERSION=10
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=10
SQLNET.ALLOWED_LOGON_VERSION_SERVER=10
Run Code Online (Sandbox Code Playgroud)
根据互联网建议,我也尝试编辑我的 *.ora文件,但它无法正常工作.
我在sqlnet.ora文件中添加了以下代码段:
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
Run Code Online (Sandbox Code Playgroud)
在这里我尝试分配(10,11,12),但它们都没有工作.
有人可以帮我这个吗?
Ama*_*ari 131
我删除了ojdbc14.jar文件并使用了ojdbc6.jar,它对我有用
小智 51
以下是我在专家交流中发现的一些文字:
错误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.
小智 8
这除了将以下内容添加到 sqlnet.ora
SQLNET.ALLOWED_LOGON_VERSION_CLIENT = 8
SQLNET.ALLOWED_LOGON_VERSION_SERVER = 8
Run Code Online (Sandbox Code Playgroud)
如果您收到“ORA-01017:无效的用户名/密码;登录被拒绝”错误,那么您需要重新创建您的密码。
我正在使用 eclipse,在尝试了所有其他答案后,它对我不起作用。最后,对我有用的ojdb7.jar是将构建路径移动到顶部。当多个 jar 具有冲突的相同类时会发生这种情况。
- 选择项目在
Project Explorer- 右键单击
Project -> Build Path -> Configure Build Path- 转到
Order and Export选项卡并选择ojdbc.jar- 单击按钮
TOP将其移至顶部
| 归档时间: |
|
| 查看次数: |
373984 次 |
| 最近记录: |