在我们的项目中,我们有Oracle jdbc直接驱动程序。这位司机写了一些来自我们团队的人,但这些人离开了团队。此驱动程序与Oracle 11g一起正常工作,但是尝试连接Oracle 12c数据库时抛出异常。
Caused by: java.sql.SQLException: [mobius][Oracle JDBC Driver][Oracle]ORA-28040: No matching authentication protocol
at com.mobius.jdbc.oraclebase.BaseExceptions40.createAppropriateSQLExceptionInstance(Unknown Source)
at com.mobius.jdbc.oraclebase.BaseExceptions40.createSQLException(Unknown Source)
at com.mobius.jdbc.oraclebase.BaseExceptions.createException(Unknown Source)
at com.mobius.jdbc.oraclebase.BaseExceptions.getException(Unknown Source)
at com.mobius.jdbc.oracle.OracleImplConnection.connectAndAuthenticate(Unknown Source)
at com.mobius.jdbc.oracle.OracleImplConnection.open(Unknown Source)
at com.mobius.jdbc.oraclebase.BaseConnection.doConnect(Unknown Source)
at com.mobius.jdbc.oraclebase.BaseConnection.connect(Unknown Source)
at com.mobius.jdbc.oraclebase.BaseConnection.setupImplConnection(Unknown Source)
at com.mobius.jdbc.oraclebase.BaseConnection.open(Unknown Source)
at com.mobius.jdbc.oraclebase.BaseDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
... 52 more
可以更改值 sqlnet.ora
SQLNET.ALLOWED_LOGON_VERSION_SERVER=8
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8
但这不是解决方案。您能否帮助找出Oracle 12c和11g中的通信协议之间的区别。