為何Oracle Database 12R2輸入正確的使用者名稱密碼口令驗證依然不能透過?
隨著Oracle資料庫版本的持續釋出,大部分企業逐漸在生產環境使用12cR2(12.2.0.1,18c-12.2.0.2)。
資料庫遷移或升級後,開發人員和運維遇到最常見的問題之一就是,使用Oracle 10g或11g早期版本的客戶端無法正常連線12.2,使用Oracle 10g或11g早期版本的客戶端的第三方工具和應用伺服器(WAS,Weblogic)也無法正常連線12.2,Oracle SQL Developer可以正常連線,因為Oracle SQL Developer不依賴這些Oracle客戶端。
使用Oracle 10g及11.2之前版本的Oracle客戶端使用sqlplus命令列,依賴於這些客戶端的第三方工具(plsql developer,toad)等連線Oracle12.2常見的報錯:
ORA-28040: No matching authentication protocol
ORA-01017: invalid username/password
根據MOS給出的建議在$ORACLE_HOME/network/admin/ sqlnet.ora 檔案中增加一下2行
SQLNET.ALLOWED_LOGON_VERSION_SERVER=10
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=10
12.2 中S QLNET.ALLOWED_LOGON_VERSION_SERVER 預設是12
修改sqlnet.ora檔案後,ORA-28040報錯沒有了。ORA-01017報錯依然存在。
[oracle@db12c ~]$ sqlplus / as sysdba
SQL*Plus: Release 12.2.0.1.0 Production on Thu Feb 21 10:40:55 2019
Copyright (c) 1982, 2016, Oracle. All rights reserved.
Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL> col username for a20
SQL> col PASSWORD_VERSIONS for a10
SQL> set lines 200 pages 200
USERNAME PASSWORD_VERSIONS
---------------------------------------- --------------------
SYS 11G 12C
SYSTEM 11G 12C
XS$NULL
DBSNMP 11G 12C
APPQOSSYS 11G 12C
GSMCATUSER 11G 12C
MDDATA 11G 12C
SYSBACKUP 11G 12C
REMOTE_SCHEDULER_AGENT
DBSFWUSER 11G 12C
GSMUSER 11G 12C
GGSYS 11G 12C
ANONYMOUS
SYSRAC 11G 12C
CTXSYS 11G 12C
OJVMSYS 11G 12C
SI_INFORMTN_SCHEMA 11G 12C
DVSYS
DVF
AUDSYS 11G 12C
GSMADMIN_INTERNAL 11G 12C
DIP 11G 12C
ORDPLUGINS 11G 12C
MDSYS 11G 12C
OLAPSYS 11G 12C
LBACSYS 11G 12C
SYSKM 11G 12C
ORDDATA 11G 12C
OUTLN 11G 12C
ORACLE_OCM 11G 12C
SYS$UMF 11G 12C
XDB 11G 12C
SYSDG 11G 12C
WMSYS 11G 12C
ORDSYS 11G 12C
SPATIAL_CSW_ADMIN_USR 11G 12C
SYS 11G 12C
SYSTEM 11G 12C
XS$NULL 11G
DBSNMP 11G 12C
APPQOSSYS 11G 12C
GSMCATUSER 11G 12C
MDDATA 11G 12C
SYSBACKUP 11G 12C
REMOTE_SCHEDULER_AGENT
DBSFWUSER 11G 12C
GSMUSER 11G 12C
GGSYS 11G 12C
ANONYMOUS
SYSRAC 11G 12C
HR 11G 12C
CTXSYS 11G 12C
BI 11G 12C
OJVMSYS 11G 12C
SI_INFORMTN_SCHEMA 11G 12C
DVSYS 11G
DVF 11G
AUDSYS 11G 12C
GSMADMIN_INTERNAL 11G 12C
DIP 11G 12C
ORDPLUGINS 11G 12C
OE 11G 12C
PM 11G 12C
MDSYS 11G 12C
OLAPSYS 11G 12C
LBACSYS 11G 12C
SYSKM 11G 12C
ORDDATA 11G 12C
OUTLN 11G 12C
ORACLE_OCM 11G 12C
SYS$UMF 11G 12C
PDBHRADMIN 11G 12C
XDB 11G 12C
IX 11G 12C
SYSDG 11G 12C
WMSYS 11G 12C
ORDSYS 11G 12C
SPATIAL_CSW_ADMIN_USR 11G 12C
SH 11G 12C
79 rows selected.
在12.2資料庫服務端使用alter user再修改一次密碼,10g及11.2以前客戶端可以正常連線12.2
SQL> alter user username identified by password ;
User altered.
另外,建議生產進行升級時應用程式和Oralce客戶端也應該同時升級。
從上圖可以看出,12.2支援11.2以上的客戶端。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28373936/viewspace-2636543/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- JavaScript驗證使用者名稱密碼是否為空JavaScript密碼
- 關於登入(使用者名稱,密碼,驗證碼)密碼
- 透過使用者名稱密碼認證保障 MQTT 接入安全密碼MQQT
- js驗證使用者名稱和密碼為空程式碼JS密碼
- js 驗證使用者名稱和密碼是否為空JS密碼
- MAC通過SMB訪問windows共享資料夾:為何使用者名稱密碼都正確卻無法通過MacWindows密碼
- JQuery表單驗證(包括:使用者名稱,手機號,密碼,確認密碼,驗證碼60s)jQuery密碼
- 使用者名稱和密碼輸入練習密碼
- 根據教程中,輸錯密碼或使用者名稱後,卻不能返回‘使用者名稱或密碼錯誤’密碼
- 使用代理通過使用者名稱和密碼驗證優缺點介紹密碼
- Flutter 密碼輸入框 驗證碼輸入框Flutter密碼
- 使用者名稱和密碼常見校驗正規表示式密碼
- Oracle10g 輸入使用者名稱稱10次密碼錯誤,使用者會鎖定Oracle密碼
- win10遠端桌面連線,使用正確的使用者名稱和密碼仍然不能成功連線Win10密碼
- 直播app原始碼,輸入密碼和使用者名稱呼叫開發者工具APP原始碼密碼
- Dockerfile 中RUN互動需要輸入 使用者名稱和密碼Docker密碼
- ubuntu密碼正確,卻不能登入圖形介面Ubuntu密碼
- 修改oracle中的使用者名稱和密碼Oracle密碼
- 登入判斷使用者名稱和密碼是否正確的程式碼(連結和讀取資料庫)密碼資料庫
- macbook開機登入時輸入正確的密碼卻提示密碼錯誤Mac密碼
- Git中git pull/push 老是重複輸入使用者名稱密碼Git密碼
- 驗證使用者輸入的口令是否與資料庫中的匹配資料庫
- Android studio 如何設計一個較為好看的使用者名稱,密碼輸入框Android密碼
- Oracle EM Express要求使用者名稱和密碼OracleExpress密碼
- Kafka怎麼配置SASL使用者名稱密碼認證Kafka密碼
- 使用者輸入的密碼和確認密碼必須一致密碼
- SQL SERVER 使用者名稱、密碼登入判斷SQLServer密碼
- 用Servlet進行使用者名稱和密碼校驗Servlet密碼
- 更改MYSQL使用者名稱密碼MySql密碼
- EBS 11i 輸入正確密碼後無反應密碼
- FTP登入時一直彈出登入視窗,就算輸入正確的賬號密碼也不能登入FTP密碼
- 登入驗證碼生成kaptcha(輸入驗證碼)APT
- 通過jquery實現記住使用者名稱密碼jQuery密碼
- 普通使用者之間無法通過ssh協議進行切換(su),即使輸入正確的密碼協議密碼
- 使用ajax方式驗證使用者名稱是否存在程式碼
- 使用java連線AD域,驗證賬號密碼是否正確Java密碼
- 網站一開啟就顯示windows安全,輸入使用者名稱和密碼網站Windows密碼
- 從螢幕上讀入使用者名稱和密碼密碼