今天一大早起来接到电话数据库用户全部被锁,而且最近经常遇到这样的事情,立刻起身去办公室。
1,用oracle 用户登录服务器:sqlplus sys/password as sysdba
提示登录成功。
2.查询被锁定账号的锁定时间
select username,lock_date from dba_users where username like 'SJCKBILL';
查出来时间为:2014-11-12 03:44:21
3.找到 listener.log文件,如果不知道这个文件放到哪里,就只能用
find / -name listener.log
查到在/oracle/app/oracle/product/10.2.0/network/log/listener.log
4.进入这个目录
发现文件很大,如果用cat 显示太慢,执行 tail -20 listener.log
发现那个时间段,是=98.XX.XX用 plsql 连续连接5次,问了这个人,才知道是不知道密码,于是连接了5次,导致用户被锁。
6. 总结
从上边可以看到,造成Oracle的账号被锁定的原因是由于误输入用户名和密码导致,所以造成了该账号登录Oracle经常失败,由于我们配置了Oracle的最大允许登录错误次数为5,所以超过5次错误后账号将被锁定。
select * from dba_profiles where resource_name like 'FAILED_LOGIN_ATTEMPTS%';
真是把我坑了,一大早起来搞这个事情,希望大家不要出现类似的事情。
另外:可以直接登录DBA解锁就可以的。 alter user username account loack;