linux上数据库账号被锁定,ORA-28000账户被锁和解锁

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

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;

0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值