我们最近从 Oracle 11g 升级到 19c,其中一个通过 OJDBC 连接到 Oracle DB 的 Java 程序开始抛出以下错误:
<块引用>java.sql.SQLException: ORA-28040: 没有匹配的认证协议
在 oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:70)
在 oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:133)
在 oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:206)
我们尝试了以下选项:
SQLNET.ALLOWED_LOGON_VERSION_SERVER=8
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8
以上似乎都不起作用。当我尝试用 ojdbc8-full.jar 替换时,我看到一个不同的错误:
<块引用>java.sql.SQLException: 找不到合适的驱动程序 DB_URL=jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)...
甲骨文版本:19c
Java 版本:1.7