admin管理员组文章数量:1648394
1、现象:项目启动时报了“the account is locked”–用户账号被锁
2、查询oracle相关文档,用户账户被锁可能的产生原因如下:
1. 尝试多次登录未成功(可能密码不正确);
2. 此用户被管理员手工锁定;
3. 用户密码到期、未按时修改密码,等等。
根据自己的情况,第一感觉是因为用户密码到期,然后自己进行的验证过程,如下:
- 第一步:查询用户的proifle
第二步:查看指定概要文件(如default)的密码有效期:
第三步:将密码有效期由默认的180天修改成“无限制”(修改之后不需要重启动数据库,会立即生效)
修改成功之后,还是发现还是不能登录!
以上用到的sql:
–查看用户的proifle是哪个,一般是default
SELECT username,PROFILE FROM dba_users;
–查看指定概要文件(如default)的密码有效期设置
SELECT * FROM dba_profiles s WHERE s.profile=’DEFAULT’ AND resource_name=’PASSWORD_LIFE_TIME’;
–将密码有效期由默认的180天修改成“无限制”: 修改之后不需要重启动数据库,会立即生效。
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
–执行成功后,再次查询用户密码有效期
SELECT * FROM dba_profiles s WHERE s.profile=’DEFAULT’ AND resource_name=’PASSWORD_LIFE_TIME’;
3、解决方法:遇到这个账号被锁,淡定的通过超级管理员来解锁
如下:
语法:alter user username account unlock;
解锁后,账户就可以正常登录了!!
4、思考:实际项目中,通过用户模块进行创建的新用户,是否存在有效期的问题!
- 实际项目有有效期的需求:一个账户只能使用30天,之后必须修改密码
- 实际项目中没有这个需求:那么在界面新建账户,应该考虑设置新账户的有效期为“UNLIMITED”
转自:https://blog.csdn/java280580332/article/details/70756533
本文标签: 方法SQLExceptionsqlJavaORA
版权声明:本文标题:java.sql.SQLException: ORA-28000: the account is locked处理方法 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dianzi/1729497660a1203104.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论