Oracle ORA-28000: the account is locked

Para visualizar el estado de un usuario de Oracle (Open, Expired, Locked…), accedemos con usuario administrador a sqlplus y ejecutamos cualquiera de estas consultas:

Mostrar todos los usuarios cuyo estado no es OPEN:

SELECT username, account_status, created, lock_date, expiry_date 
FROM dba_users
WHERE account_status != 'OPEN';

Mostrar usuarios expirados:

SELECT username, account_status
FROM dba_users
WHERE ACCOUNT_STATUS LIKE '%EXPIRED%';

Mostrar usuarios bloqueados:

SELECT username, account_status
FROM dba_users
WHERE ACCOUNT_STATUS LIKE '%LOCKED%';

Una vez identificado el usuario, para desbloquearlo simplemente ejecutamos la siguiente sentencia:

ALTER USER usuario ACCOUNT UNLOCK;

Si el usuario está en estado EXPIRED, regeneramos una nueva contraseña para activarlo de nuevo:

ALTER USER usuario IDENTIFIED BY nueva_clave;