By default the passwords for OIM and SOA infrastructure tables expire in 180 days. Incase the password expire we need to reset the password so the OIAM and SOA managed servers can be started.
To resolve this issue, following steps can be taken.
1.) Connect to database using sys users.
2.) Run the SQL statement select * from dba_profiles;
Here PASSWORD_LIFE_TIME field is responsible for expiring of password after 180 days.
3. Execute following command to disable this feature:
Sql> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
SQL> select * from dba_profiles;
5.) We need to Reset the password of the locked user. We can use the same password or a different password.
SQL> SPOOL PassworrdResetList.sql
SQL> select 'alter user "'||d.username||'" identified by values '''||u.password||''';' c
from dba_users d, sys.user$ u
where u.user# = d.user_id
and d.username IN (select username from dba_users where account_status like 'EXPIRED%')
SQL>SPOOL OFF
6.) SPOOL file will give a list of ALTER USER commands. execute these commands to reset the passwords.
7.)
SQL> SPOOL LockedUsers.sql
SQL> select 'ALTER USER ' || username || ' ACCOUNT UNLOCK;' from dba_users where account_status like '%LOCKED%';
SQL> SPOOL OFF
8.) Run all the ALTER USER username ACCOUNT UNLOCK from the spool file. Please ensure that you DO NOT UNLOCK those users which are recommended to remain LOCKED by Oracle.