启动项目时提示ORA-28000 账户已锁定,表明Oracle数据库账户因多次登录失败被锁定。解决方法是使用具有管理员权限的账号登录数据库,执行解锁命令ALTER USER用户名ACCOUNT UNLOCK,即可恢复账户正常使用。
1、 项目启动时出现ORA-28000 账户已被锁定提示,具体所示。
2、 用户被锁定导致无法操作。
3、 查询FAILED_LOGIN_ATTEMPTS参数的默认值,该参数用于设定自首次登录失败后允许连续失败的次数限制,需注意此为连续而非累计失败次数。该数值表示系统设定的上限,并不反映当前实际已发生的连续失败登录次数。
4、 在DOS窗口中输入sqlplus /nolog,操作所示。
5、 以sysdba身份连接数据库,操作所示。
6、 查看数据库用户配置文件信息,详情见下图所示。
7、 所示
8、 查询结果显示,连续10次失败后账户将被锁定。
9、 在DOS窗口中输入sqlplus /nolog以解锁用户。
10、 解锁用户账户的命令为:alter user 用户名 account unlock,具体操作见下图所示。
11、 用户名为被锁定的用户账号名称。
12、 将参数 failed_login_attempts 设置为 unlimited,可取消登录失败次数限制,但会带来安全风险,因此不推荐此操作。执行命令为:alter profile default limit failed_login_attempts unlimited。该修改会削弱账户的防暴力破解能力,增加被攻击的可能性,建议根据实际安全需求谨慎配置,保持适当的登录尝试限制以保障系统安全。
13、 见下图示
