首页 > 其他 > 详细

ORA-28000账户被锁和解锁

时间:2014-01-21 09:31:16      阅读:367      评论:0      收藏:0      [点我收藏+]

今天测试库有个账户的密码忘了,试了十几次就开始提示:

ERROR:
ORA-28000: the account is locked

意思明显就是账户被锁了,可能是用户的资源设置中对密码重试次数做了限制。


验证:

SQL> select a.username, b.profile, b.resource_name, b.limit
  2  from dba_users a, dba_profiles b
  3  where a.username = ‘GALTTEST‘ and a.profile = b.profile;
GALTTEST   DEFAULT    COMPOSITE_LIMIT           UNLIMITED
GALTTEST   DEFAULT    SESSIONS_PER_USER         UNLIMITED
GALTTEST   DEFAULT    CPU_PER_SESSION           UNLIMITED
GALTTEST   DEFAULT    CPU_PER_CALL              UNLIMITED
GALTTEST   DEFAULT    LOGICAL_READS_PER_SESSION UNLIMITED
GALTTEST   DEFAULT    LOGICAL_READS_PER_CALL    UNLIMITED
GALTTEST   DEFAULT    IDLE_TIME                 UNLIMITED
GALTTEST   DEFAULT    CONNECT_TIME              UNLIMITED
GALTTEST   DEFAULT    PRIVATE_SGA               UNLIMITED
GALTTEST   DEFAULT    FAILED_LOGIN_ATTEMPTS     10
GALTTEST   DEFAULT    PASSWORD_LIFE_TIME        180
GALTTEST   DEFAULT    PASSWORD_REUSE_TIME       UNLIMITED
GALTTEST   DEFAULT    PASSWORD_REUSE_MAX        UNLIMITED
GALTTEST   DEFAULT    PASSWORD_VERIFY_FUNCTION  NULL
GALTTEST   DEFAULT    PASSWORD_LOCK_TIME        1
GALTTEST   DEFAULT    PASSWORD_GRACE_TIME       7

确实如此,只允许10次尝试,之后账户就会被锁。


解锁方法很多,通过PLSQL Developer工具解锁可能是最简单、最直观的。

1、用管理员账户登录PLSQL Developer(登录名可以为system,选择类型的时候把Normal修改为Sysdba)。

2、左侧选择My Objects,查看Users文件夹。

3、选择GALTTEST用户,右击点击”编辑“;

4、把“帐户被锁住”的勾去掉;(也可以修改密码)。

5、点击“应用”再点击“关闭”;

6、重新登录就可以通过验证了;


其实使用sqlplus命令行解锁也很简单,用管理员账号sysdba角色登录,执行alter user GALTTEST account unlock;,即可解锁。


另外,使用如下命令将profile的FAILED_LOGIN_ATTEMPTS属性值修改也可以达到过滤重试次数的限制。

ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED


附:创建profile的SQL:

create profile test limit;

ORA-28000账户被锁和解锁

原文:http://blog.csdn.net/bisal/article/details/18264817

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!