Oracle數(shù)據(jù)庫用戶密碼過期的解決方法
問題現(xiàn)象:
今天在更改數(shù)據(jù)庫數(shù)據(jù)的時候,程序報錯了,如下:
ORA-28001:the password has expired
問題分析:
很顯然,報錯原因就是:
密碼已過期!
所以現(xiàn)在需要做的事情只有兩件:
1.修改密碼的過期時間
2.修改/重置密碼
這里分析一下為什么要這樣做:
1.修改密碼的過期時間:這是因為Oracle Database 11g 版本的Oracle數(shù)據(jù)庫有一項默認(rèn)配置,就是密碼過期時間默認(rèn)為180天(6個月左右);
通過sysdba身份可以登錄Oracle數(shù)據(jù)庫,可以查看自己的Oracle數(shù)據(jù)庫版本和數(shù)據(jù)庫默認(rèn)密碼保質(zhì)期的配置:
LIMIT(180):保存時長為180天
修改為不限期:UNLIMITED,這樣以后就不會再出現(xiàn)這個密碼過期的問題了,此處需結(jié)合項目需求,有些公司是建議定期更換密碼的,因此不會設(shè)置為UNLIMITED;
2.修改密碼:再密碼過期后,原密碼就失效了,因此需要重新修改密碼/重置密碼。
解決方法:
1.查詢默認(rèn)的密碼保存時間
SELECT * FROM dba_profiles WHERE profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';
2.修改為不限期,若有定期更換密碼的需求,則可以設(shè)置為每個密碼更換周期所需的天數(shù)(如:30:,表示每過30天就需要重置一次密碼)
不限期:ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
30天的密碼有效期:ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME 30;
3.確定密碼過期的用戶,如果不確定,可以通過查詢所有用戶,并結(jié)合用戶的創(chuàng)建時間和當(dāng)前時間的時間差,推測出密碼過期的用戶:
select * from all_users;?
4.重置密碼:
alter user 密碼已過期的USERNAME identified by 密碼;
重置完即可正常訪問數(shù)據(jù)庫,不需要重啟數(shù)據(jù)庫!
總結(jié)
到此這篇關(guān)于Oracle數(shù)據(jù)庫用戶密碼過期解決的文章就介紹到這了,更多相關(guān)Oracle用戶密碼過期內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
oracle獲取上一旬的開始時間和結(jié)束時間的實現(xiàn)函數(shù)
本文為大家介紹下oracle如何獲取上一旬的開始時間和結(jié)束時間,實現(xiàn)函數(shù)如下,感興趣的朋友可以參考下2013-09-09oracle數(shù)據(jù)庫導(dǎo)入.dmp腳本的sql 語句
這篇文章主要介紹了oracle數(shù)據(jù)庫導(dǎo)入.dmp腳本的sql語句,非常不錯,具有一定的參考借鑒價值 ,需要的朋友可以參考下2019-07-07oracle常用分析函數(shù)與聚合函數(shù)的用法
今天小編就為大家分享一篇關(guān)于oracle常用分析函數(shù)與聚合函數(shù)的用法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-01-01Oracle 數(shù)據(jù)庫導(dǎo)出(exp)導(dǎo)入(imp)說明
exp 將數(shù)據(jù)庫內(nèi)的各對象以二進(jìn)制方式下載成dmp文件,方便數(shù)據(jù)遷移。2009-02-02