Oracle提示錯誤消息ORA-28001: the password has expired,數據庫
經調查是因爲Oracle 11G的新特性所致, Oracle 11G建立用戶時缺省密碼過時限制是180天, 若是超過180天用戶密碼未作修改則該用戶沒法登陸。安全
可經過ide
SELECT * FROM dba_profiles WHERE profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME'it
語句查詢密碼的有效期設置,登錄
LIMIT字段是密碼有效天數。在密碼將要過時或已通過期時可經過配置
ALTER USER 用戶名 IDENTIFIED BY 密碼 ;file
語句進行修改密碼,密碼修改後該用戶可正常鏈接數據庫。密碼
長久對應可經過配置文件
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED數據
語句將口令有效期默認值180天修改爲「無限制」。出於數據庫安全性考慮,不建議將PASSWORD_LIFE_TIME值設置成UNLIMITED,
建議客戶按期修改數據庫用戶口令。
*******************************************************
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;
3. 賬戶再改一次密碼
SQL > alter user ink identified by <原來的密碼> ----不用換新密碼
4. 使用修改後的用戶登陸,若是報「ORA-28000:用戶已被鎖」,解鎖
SQL > alter user db_user account unlock;
SQL > commit;