I am facing this error given below :
ORA-28000: the account is locked
Is this a DB Issue ? Whenever I unlock the user account using the alter SQL query, that is ALTER USER username ACCOUNT UNLOCK
, it will be temporarily OK.
Then after sometime the same account gets locked again. The database is using oracle XE
version. Does anybody else have the same issue?
If you enter an incorrect password 5 times in a row, your account gets locked. To unlock a locked account, you need to reset your password.
Answers. Cause: The user has entered wrong password consequently for maximum number of times specified by the user's profile parameter FAILED_LOGIN_ATTEMPTS, or the database administrator has locked the account.
One of the reasons of your problem could be the password policy you are using.
And if there is no such policy of yours then check your settings for the password properties in the DEFAULT
profile with the following query:
SELECT resource_name, limit
FROM dba_profiles
WHERE profile = 'DEFAULT'
AND resource_type = 'PASSWORD';
And If required, you just need to change the PASSWORD_LIFE_TIME
to unlimited
with the following query:
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
And this Link might be helpful for your problem.
Way to unlock the user :
$ sqlplus /nolog
SQL > conn sys as sysdba
SQL > ALTER USER USER_NAME ACCOUNT UNLOCK;
and open new terminal
SQL > sqlplus / as sysdba
connected
SQL > conn username/password //which username u gave before unlock
password:password
password:password
Here other solution to only unlock the blocked user. From your command prompt log as SYSDBA:
sqlplus "/ as sysdba"
Then type the following command:
alter user <your_username> account unlock;
Check the PASSWORD_LOCK_TIME
parameter. If it is set to 1 then you won't be able to unlock the password for 1 day even after you issue the alter user unlock
command.
I have faced this similar issue and resolved it by using following steps :
sqlplus "/ as sysdba"
alter user HR identified by password account unlock
password
is the password that I have used. Login to SQL Plus client on the oracle database server machine.
enter user-name: system
enter password: password [Only if, if you have not changed your default password while DB installation]
press enter. after which, you will be seeing the connection status.
Now,
SQL> ALTER USER [USER_NAME] ACCOUNT UNLOCK;
press enter.
you will be seeing message: user altered.
Now try login with the user name on db client[sqldeveloper].
Account Unlock by using below query :
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
Check PASSWORD_LIFE_TIME
parameter by using below query :
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
Change the parameter using below query
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With