java ora 28040_Oracle 11g与112c中ORA-28040 错误解决
今天遇到一個連接192.168.56.102這個庫報錯
Java.sql.SQLException: ORA-28040: No matching authentication protocol
Oracle 12C下查詢此報錯
oralce:/oracle/db/app/12.1.0/db/network/admin> oerr ora 28040
28040, 0000, "No matching authentication protocol"
// *Cause:? There was no acceptable authentication protocol for
//? ? ? ? ? either client or server.
// *Action: The administrator should set the values of the
//? ? ? ? ? SQLNET.ALLOWED_LOGON_VERSION_SERVER and
//? ? ? ? ? SQLNET.ALLOWED_LOGON_VERSION_CLIENT parameters, on both the
//? ? ? ? ? client and on the server, to values that match the minimum
//? ? ? ? ? version software supported in the system.
//? ? ? ? ? This error is also raised when the client is authenticating to
//? ? ? ? ? a user account which was created without a verifier suitable for
//? ? ? ? ? the client software version. In this situation, that account's
//? ? ? ? ? password must be reset, in order for the required verifier to
//? ? ? ? ? be generated and allow authentication to proceed successfully.
Oracle 11g下查詢報錯
oracle@oralce:/oracle/app/oracle/product/11.2.0/db/network/admin$ oerr ora 28040
28040, 0000, "No matching authentication protocol"
// *Cause:? No acceptible authentication protocol for both client and server
// *Action: Administrator should set SQLNET_ALLOWED_LOGON_VERSION parameter
//? ? ? ? ? on both client and servers to values that matches the minimum
//? ? ? ? ? version supported in the system.
很明顯,在11G和12C下的解決方案是不一樣的。
在11G中的參數是SQLNET_ALLOWED_LOGON_VERSION;
而在12C中的參數是SQLNET.ALLOWED_LOGON_VERSION_SERVER和SQLNET.ALLOWED_LOGON_VERSION_CLIENT
因為我的環境是12C的,所以我使用12C的解決方式,設置以上2個參數。
因為我的環境上沒有sqlnet.ora文件,所以新建了一個
vi sqlnet.ora
SQLNET.ALLOWED_LOGON_VERSION_SERVER=8
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8
然后重啟監聽
lsnrctl reload
LSNRCTL for IBM/AIX RISC System/6000: Version 12.1.0.2.0 - Production on 13-JUN-2017 11:42:52
Copyright (c) 1991, 2016, Oracle.? All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
TNS-01190: The user is not authorized to execute the requested listener command
oralce:/oracle/db/app/12.1.0/db/network/admin>
oralce:/oracle/db/app/12.1.0/db/network/admin>
oralce:/oracle/db/app/12.1.0/db/network/admin> lsnrctl status
LSNRCTL for IBM/AIX RISC System/6000: Version 12.1.0.2.0 - Production on 13-JUN-2017 11:42:57
Copyright (c) 1991, 2016, Oracle.? All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias? ? ? ? ? ? ? ? ? ? LISTENER
Version? ? ? ? ? ? ? ? ? TNSLSNR for IBM/AIX RISC System/6000: Version 12.1.0.2.0 - Production
Start Date? ? ? ? ? ? ? ? 09-JUN-2017 22:46:07
Uptime? ? ? ? ? ? ? ? ? ? 3 days 12 hr. 56 min. 50 sec
Trace Level? ? ? ? ? ? ? off
Security? ? ? ? ? ? ? ? ? ON: Local OS Authentication
SNMP? ? ? ? ? ? ? ? ? ? ? OFF
Listener Parameter File? /oracle/gridhome/app/12.1.0/grid/network/admin/listener.ora
Listener Log File? ? ? ? /oracle/grid/diag/tnslsnr/oralce/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=135.10.89.101)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=135.10.89.103)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=oralce)(PORT=5500))(Security=(my_wallet_directory=/oracle/db/app/12.1.0/db/admin/zykgdb/xdb_wallet))(Presentation=HTTP)(Session=RAW))
Services Summary...
Service "+ASM" has 1 instance(s).
Instance "+ASM2", status READY, has 1 handler(s) for this service...
Service "zykgdb" has 1 instance(s).
Instance "zykgdb2", status READY, has 1 handler(s) for this service...
Service "zykgdbXDB" has 1 instance(s).
Instance "zykgdb2", status READY, has 1 handler(s) for this service...
The command completed successfully
如果是RAC,那么就需要在2個節點都設置sqlnet.ora文件。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的java ora 28040_Oracle 11g与112c中ORA-28040 错误解决的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql主从 单点_MySQL主从复制
- 下一篇: android cordova 教程,c