感謝作者
原文鏈接:https://blog.csdn.net/peng_wei_kang/article/details/80403486
1.發現項目報以下錯誤:
-
Caused by: java.sql.SQLException: ORA- 28040: 沒有匹配的驗證協議
-
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java: 439)
-
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java: 388)
-
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java: 381)
-
at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java: 427)
-
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java: 436)
-
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java: 186)
-
at oracle.jdbc.driver.T4CTTIoauthenticate.doOSESSKEY(T4CTTIoauthenticate.java: 390)
-
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java: 356)
-
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java: 531)
-
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java: 221)
-
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java: 32)
-
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java: 503)
解決方法:
在oracle安裝目錄下的\product\12.2.0\dbhome_1\network\admin\sqlnet.ora文件中新增一行,內容如下:
SQLNET.ALLOWED_LOGON_VERSION=8
SQLNET.ALLOWED_LOGON_VERSION=8
接着重啟項目。
2.遇到以下錯誤:
-
Caused by: java.sql.SQLException: ORA- 01017: 用戶名/口令無效; 登錄被拒絕
-
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java: 439)
-
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java: 388)
-
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java: 381)
-
at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java: 564)
-
at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java: 431)
-
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java: 436)
-
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java: 186)
-
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java: 366)
-
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java: 752)
-
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java: 359)
-
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java: 531)
-
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java: 221)
我確定賬號密碼沒有錯誤,用sqlplus以及sql developer都可以連接,但通過項目連接就存在這個問題。
解決問題:
通過管理員賬號重新去修改一下當前賬號的密碼為原來的密碼:
-
- SQL< conn system/root; (注意:此處是使用自己的管理員賬號和密碼去連接)
- SQL< alter user c##ansibee identified by ansibee;
-