近日客戶反應:應用程序換到另一台機器運行時報錯:“Ora-01017:用戶名/口令無效; 登錄被拒絕。”
檢查各配置文件,確認用戶名與密碼無誤,且通過plsql developer等工具都可正常連接,說明另有原因。
后經排查,發現新運行機器安裝的是oracle 12.1c客戶端,而服務器是12.2c,正是這引起了Ora-01017錯誤。
解決方法:
1) 在服務器環境,修改sqlnet.ora,添加以下兩行:
SQLNET.ALLOWED_LOGON_VERSION_SERVER=10 SQLNET.ALLOWED_LOGON_VERSION_SERVER=10
其中的數字代表了可允許連接的最小版本號。
2) 重啟監聽服務:lsnrctl restart
3) 重新設置一遍用戶密碼:
SQL> conn / as sysdba; SQL>ALTER USER myuser IDENTIFIED BY mypassword;