ORA-28000:the account is locked错误解决

Oracle数据库日志中出现ORA-28000:the account is locked的错误,可以按下面的步骤处理:

 

 

1、查询FAILED_LOGIN_ATTEMPTS参数默认值,这个参数限制了从第一次登录失败开始计算连续登陆失败的次数,注意不是累计失败的次数。这个值是个限额,并不代表当前已经连续失败的次数。

 

在DOS窗口输入sqlplus /nolog

 

SQL>conn /as sysdba

 

         Connected.

 

SQL> desc dba_profiles;

 名称                                      是否为空? 类型

 ----------------------------------------- -------- --------------

 

 PROFILE                                   NOT NULL VARCHAR2(30)

 RESOURCE_NAME                             NOT NULL VARCHAR2(32)

 RESOURCE_TYPE                                      VARCHAR2(8)

 LIMIT                                              VARCHAR2(40)

 

SQL> select resource_name,limit from dba_profiles where resource_name='FAILED_LOGIN_ATTEMPTS';

 

RESOURCE_NAME                    LIMIT

-------------------------------- ----------------------------------------

FAILED_LOGIN_ATTEMPTS            10    

 

从上面的查询结果可以看出,如果连续失败10次,用户就会被锁定。

 

2、解锁用户

在DOS窗口输入sqlplus /nolog

 

SQL> conn /as sysdba

已连接。

 

SQL> alter user username account unlock;

 

用户已更改。

 

username为具体被锁定的用户名。

       

3、修改参数failed_login_attempts=unlimited,当然这样修改会降低安全性,不建议这么做。

 

SQL> alter profile default limit failed_login_attempts unlimited;

 

配置文件已更改

 

SQL> select resource_name,limit from dba_profiles where resource_name='FAILED_LOGIN_ATTEMPTS';

 

RESOURCE_NAME                    LIMIT

-------------------------------- ----------------------------------------

FAILED_LOGIN_ATTEMPTS            UNLIMITED

 

这样修改后,随便用户连续登录失败多少次也不会被锁定了。

 

摘自 andy的专栏

猜你喜欢

转载自blog.csdn.net/xiachaoyang/article/details/78600072
今日推荐