ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED

最近公司的一台PDM系統服務突然無法啟用,執行程式後大約跑個30秒就會自動關閉,查了一下log,發現設定好的帳號密碼無法登入oracle,於是造成錯誤。log很清楚的說明了密碼過期(如下圖)。

oracle11g中账号密码过期或者账号被锁_sql

於是就開始先下載oracle instant client以及sqlplus 。(這是免安裝版的oracledb管理工具,隻要一起解壓縮到要處理的伺服器之中,放在一起,運行sqlplus.exe即可進入管理介面。)

oracle11g中账号密码过期或者账号被锁_sql_02

然後執行sqlplus.exe,登入system發現出現了這樣的訊息,果然過期了。

ERROR: ORA-28002: the password will expire within 6 days

傑森史戴森

再下個指令確認一下,可以發現Expired更確切的證據:

oracle11g中账号密码过期或者账号被锁_ide_03

接著先處理過期的設定

在sqlplus中下這串指令,可以把過期的設定取消。天下霸圖

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

把 default profile 中的 password lifetime 設定為無限制, 這樣應該就不會出現 ORA-28001 的錯誤

再來處理被expired的帳號。

在sqlplus中下以下的指令

alter user system identified by XXX;

(xxx指的是要設定的密碼)

把過期的帳號密碼改掉,則本來expired的帳號account_status就會變成OPEN。至此解決帳號過期的問題。

oracle11g中账号密码过期或者账号被锁_ide_04


作者:高级测试开发网
本文版权归作者欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。