Oracle提示錯誤消息ORA-28001: the password has expired,是因爲Oracle11G的新特性所致, Oracle11G建立用戶時缺省密碼過時限制是180天(即6個月), 若是超過180天用戶密碼未作修改則該用戶沒法登陸。 Oracle公司是爲了數據庫的安全性默認在11G中引入了這個默認功能,可是這個默認的功能很容易被DBA或者是開發人員給疏忽,一旦密碼180天未修改過,就會出現這樣的問題。sql
解決方法可經過以下SQL語句數據庫
查看指定概要文件(如default)的密碼有效期設置:安全
sql>SELECT * FROM dba_profiles s WHERE s.profile=\'DEFAULT\' AND resource_name=\'PASSWORD_LIFE_TIME\';開發
2. 將密碼有效期由默認的180天修改爲「無限制」:登錄
sql>ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;file
修改以後不須要重啓動數據庫,會當即生效。密碼
3. 修改用戶密碼方法
sql> ALTER USER USERNAME IDENTIFIED BY PASSWORD;數據