ORA-28000 the account is locked错误
Oct212019
十一长假刚刚结束,客户电话说开发那面反映应用程序连不上数据库,让我去现场解决。
到达现场后,经过登录测试,遇到了ORA-28000用户被锁定的错误。
[oracle@ebaoreaddb ~]$ sqlplus xxx/xxx SQL*Plus: Release 11.2.0.4.0 Production on Tue Oct 8 14:07:39 2019 Copyright (c) 1982, 2013, Oracle. All rights reserved. ERROR: ORA-28000: the account is locked
登录数据库查询,用户状态正常,并没有锁。
SQL> select username,ACCOUNT_STATUS from dba_users where username='HTPROD'; USERNAME ACCOUNT_STATUS ------------------------------ -------------------------------- HTPROD OPEN
查询是哪个程序导致用户密码次数过多导致用户被锁住,没有发现任何信息。
SQL> select TERMINAL,USERID,TIMESTAMP# from aud$ where RETURNCODE=1017; no rows selected
查询MOS,Account status in dba_users show open but connection on Standby fails as ‘ORA-28000: the account is locked'(Doc ID 2440122.1)发现,这可能是个STANDBY备库。
SQL> select database_role from v$database; DATABASE_ROLE ---------------- PHYSICAL STANDBY
查询确定这的确是个备库,因为STANDBY备库是只读模式,无法修改数据字典信息,导致AUD$表里没有记录下来使用错误密码登录的信息,也没有修改用户被锁的状态信息。
由于十一长假,刚好赶上备库磁盘空间满,主库的归档无法发送到目标端,而且MRP进程在应用归档日志时,数据文件无法扩展,导致MRP进程夯住,主库还有一个定时任务定时使用rm命令删除归档日志,导致备库丢失大量的归档,最后只能重建备库。
夏天快乐,
2021-07-17 19:45感谢博主的分享,支持了。