oracle数据库用户状态失效Expired

引用自:https://www.cnblogs.com/abclife/p/5397969.html

Oracle数据库用户的状态为Expired,此时,该用户是不能访问使用数据库的。处理思路是,将该用户的密码进行重置,为了确保外部应用脚本能正常使用数据库,该用户的重置密码要与原始密码相同,但是,多数情况下,我们并不记得原始密码。

处理方法:

1. SQL> select user#,name,password,astatus from user$ where name ='TEST';

  USER# NAME                           PASSWORD                          ASTATUS
---------- ------------------------------ ------------------------------ ----------
     83      TEST                           A894844C342502B11                 1

2.SQL>alter user test identified by values 'A894844C342502B11';

该用户的状态即恢复为正常open状态。(Oracle11g亲测成功!)

SQL> select * from user_astatus_map;
 
   STATUS# STATUS
---------- --------------------------------
         0 OPEN
         1 EXPIRED
         2 EXPIRED(GRACE)
         4 LOCKED(TIMED)
         8 LOCKED
         5 EXPIRED & LOCKED(TIMED)
         6 EXPIRED(GRACE) & LOCKED(TIMED)
         9 EXPIRED & LOCKED
        10 EXPIRED(GRACE) & LOCKED
 
9 rows selected.

另外一种方法:直接修改表user$的字段ASTATUS为0,这样用户就变成open状态了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章