問題描述:客戶反映客戶端不能登錄應用程序時不能連接。
環境:AIX 5.3 + Oracle 11gR2
解決:遠程Telnet到數據庫主機,sqlplus / as sysdba 連接后操作正常,表明數據庫服務器應該正常,然后在客戶端用sqlplus連接數據庫提示密碼過期錯誤:ORA-28001: the password has expired,原來是密碼過期了。
分析:原來Oracle 11g之前的版本默認profile是沒有密碼過期的限制的,在Oracle 11g中默認的profile啟用了密碼過期時間是180天,去除這個限制便可。
查詢默認的profile的密碼過期的設置
select * from dba_profiles
where profile='DEFAULT' and resource_name='PASSWORD_LIFE_TIME';
設置default profile密碼永不過期,立即生效,不需重啟
alter profile default limit password_life_time unlimited;
已經過期的密碼就需要改了,可以該成一樣
可以sqlplus 登錄會提示你改密碼
也可以alter user username identified by password;