天天看點

爛泥:ORA-28001解決方法

今天遇到一個問題,公司的産品提示無法聯系資料庫。檢視日志發現有ora-28001的錯誤提示。

爛泥:ORA-28001解決方法

經檢視相關資料,發現是由于oracle11g的新特性所緻, oracle11g建立使用者時預設密碼過期限制是180天(即6個月), 如果超過180天使用者密碼未做修改則該使用者無法登入。 oracle公司是為了資料庫的安全性預設在11g中引入了這個預設功能,但是這個預設的功能很容易被dba或者是開發人員給疏忽,一旦密碼180天未修改過,就會出現這樣的問題。

解決方法可通過如下sql語句

select * from dba_profiles where profile=’default’ and resource_name=’password_life_time’;

查詢密碼的有效期設定,limit字段是密碼有效天數。

在密碼将要過期或已經過期時可通過如下語句進行修改密碼,密碼修改後該使用者可正常連接配接資料庫。

alter user 使用者名 identified by 密碼;

如果想去除180天的密碼生存周期的限制可通過如下sql語句将其關閉:

alter profile default limit password_life_time unlimited;

如上sql語句将密碼有效期預設值180天修改成了“無限制”。但是出于資料庫安全性考慮,不建議将password_life_time值設定成unlimited,建議大家定期修改資料庫使用者密碼。

爛泥:ORA-28001解決方法