我正面临下面给出的这个错误:
ORA-28000: the account is locked
这是数据库问题吗?每当我使用 alter SQL 查询(即 ALTER USER username ACCOUNT UNLOCK
)解锁用户帐户时,它都会暂时正常。
然后一段时间后,同一帐户再次被锁定。数据库正在使用 oracle XE
版本。其他人有同样的问题吗?
问题的原因之一可能是您使用的密码策略。
如果您没有此类政策,则使用以下查询检查 DEFAULT
配置文件中密码属性的设置:
SELECT resource_name, limit
FROM dba_profiles
WHERE profile = 'DEFAULT'
AND resource_type = 'PASSWORD';
如果需要,您只需使用以下查询将 PASSWORD_LIFE_TIME
更改为 unlimited
:
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
这个 Link 可能对您的问题有所帮助。
解锁用户方式:
$ sqlplus /nolog
SQL > conn sys as sysdba
SQL > ALTER USER USER_NAME ACCOUNT UNLOCK;
并打开新终端
SQL > sqlplus / as sysdba
connected
SQL > conn username/password //which username u gave before unlock
它会询问新密码:密码
它会要求重新输入密码:密码
按回车你将登录
此处仅解锁被阻止用户的其他解决方案。从您的命令提示符日志中作为 SYSDBA:
sqlplus "/ as sysdba"
然后键入以下命令:
alter user <your_username> account unlock;
检查 PASSWORD_LOCK_TIME
参数。如果它设置为 1,那么即使发出 alter user unlock
命令,您也无法在 1 天内解锁密码。
我遇到了类似的问题并通过使用以下步骤解决了它:
打开 Windows 命令提示符。使用命令 sqlplus "/ as sysdba" 登录 然后执行命令 alter user HR identify by password account unlock 请注意,密码是我使用的密码。通过使用上述步骤,您可以使用密码密码以 HR 用户身份连接到 Oracle 数据库。
在 oracle 数据库服务器机器上登录 SQL Plus 客户端。
输入用户名:系统
输入密码:密码 [仅当您在安装数据库时没有更改默认密码时]
按回车。之后,您将看到连接状态。
现在,
SQL> ALTER USER [USER_NAME] ACCOUNT UNLOCK;
按回车。
您将看到消息:user altered.
现在尝试使用 db client[sqldeveloper] 上的用户名登录。
解决方案01
使用以下查询解锁帐户:
SQL> select USERNAME,ACCOUNT_STATUS from dba_users where username='ABCD_DEV';
USERNAME ACCOUNT_STATUS
-------------------- --------------------------------
ABCD_DEV LOCKED
SQL> alter user ABCD_DEV account unlock;
User altered.
SQL> select USERNAME,ACCOUNT_STATUS from dba_users where username='ABCD_DEV';
USERNAME ACCOUNT_STATUS
-------------------- --------------------------------
ABCD_DEV OPEN
解决方案02
使用以下查询检查 PASSWORD_LIFE_TIME
参数:
SELECT resource_name, limit FROM dba_profiles WHERE profile = 'DEFAULT' AND resource_type = 'PASSWORD';
RESOURCE_NAME LIMIT
-------------------------------- ------------------------------
FAILED_LOGIN_ATTEMPTS 10
PASSWORD_LIFE_TIME 10
PASSWORD_REUSE_TIME 10
PASSWORD_REUSE_MAX UNLIMITED
PASSWORD_VERIFY_FUNCTION NULL
PASSWORD_LOCK_TIME 1
PASSWORD_GRACE_TIME 7
INACTIVE_ACCOUNT_TIME UNLIMITED
使用以下查询更改参数
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;