jueves, 29 de septiembre de 2011

ORA-28002: the password will expire within X days

Cuando nos da el Error: ORA-28002: the password will expire within X days, por mas que cambiemos PASSWORD_LIFE_TIME y PASSWORD_GRACE_TIME, no podemos salir de este estado.

Solución: Cambiar la clave del usuario.
En el caso que "No se quiera cambiarla" y dejar la misma, pero no sabemos cual es la actual podemos hacer la siguiente consulta:

select a.name, a.password, b.account_status ,'alter user "' || a.name || '" identified by values ' || a.password ||';' from sys.user$ a, dba_users b
where b.username = a.name

Con el resultado de la consulta, seteamos la misma clave que tienen actualmente los usuarios.

Luego de esto, si que se quiere que las claves no expiren mas, ejecutar:
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;