当使用该用户登录或dmp文件还原时出现ORA-28000: the account is locked、此时表示该用户已连续输错10次密码从而被锁定(系统默认10次错误锁定用户)
--查看被锁的用户
select LOCK_DATE,username from dba_users where username='USERNAME';
LOCK_DATE为空说明没有锁定,非空为锁定。
解决步骤如下:
第一步:使用PL/SQL,登录名为sys,数据库名称不变,选择类型的时候把Normal修改为Sysdba;
第二步:选择myjob,查看users;
第三步:选择被锁定的用户,右击点击“编辑”;
第四步:修改密码,把“帐户被锁住”的勾去掉;
第五步:点击“应用”再点击“关闭”;
第六步:重新登录就可以通过验证了;
解决方法二:
Sql语句解锁
ALTER USER USER_NAME ACCOUNT UNLOCK;
注红字处为需解锁的用户名
-----设置系统的默认登录次数
alter profile DEFAULT limit FAILED_LOGIN_ATTEMPTS 10;
alter profile DEFAULT limit FAILED_LOGIN_ATTEMPTS UNLIMITED;
一般数据库默认是10次尝试失败后锁住用户
1、查看FAILED_LOGIN_ATTEMPTS的值
select * from dba_profiles
2、修改为30次
alter profile default limit FAILED_LOGIN_ATTEMPTS 30;
3、修改为无限次(为安全起见,不建议使用)
alter profile default limit FAILED_LOGIN_ATTEMPTS unlimited;