1. 程式人生 > >Oracle11G密碼180天(預設值)過期後的修改方法

Oracle11G密碼180天(預設值)過期後的修改方法

Oracle11G密碼180天(預設值)過期後的修改方法。在Oracle 11G 建立使用者時預設密碼過期限制是180天, 如果超過180天使用者密碼未做修改則該使用者無法登入,下面與大家分享下修改方法,具體方法如下:

由於Oracle11G的新特性所致,經常會遇到使用sqlplus登陸oracle資料庫時提示“ORA-28002: 7 天之後口令將過期”等情況。

在Oracle 11G 建立使用者時預設密碼過期限制是180天, 如果超過180天使用者密碼未做修改則該使用者無法登入,提示“ORA-28001: the password has expired”

  密碼過期後,業務程序連線資料庫異常,必然會影響使用與登入

  解決方法

  *******************************************************

  1. 檢視使用者密碼的有效期設定(一般預設的配置檔案是DEFAULT)

  SQL > SELECT * FROM dba_profiles WHERE profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME'

  2. 將密碼有效期由預設的180天修改成“無限制”,修改之後不需要重啟動資料庫,會立即生效

  SQL > Alter PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

--如果為了安全考慮的話,也可以設定成非"無限制",例如:360天等,具體SQL語句如下:

SQL > Alter PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME 360;

  3. 帳戶再改一次密碼

  SQL > alter user user_name identified by <原來的密碼> ----不用換新密碼

  4. 使用修改後的使用者登入,如果報“ORA-28000:使用者已被鎖”,解鎖

  SQL > alter user db_user account unlock;

  SQL > commit;