Easiest way to keep your UAT system from getting out of hand is to delete sometimes, but the Reuse ID functionality in OIM is extremely dangerous (i.e. it doesn't work).
So I suggest using this SQL to clean your deleted test accounts (this is not something I would do in production!)
delete from oud where oiu_key in (select oiu_key from oiu where usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from osi where req_key in (select req_key from req where orc_key in (select orc_key from orc where orc.usr_key in (select USR_KEY from USR where usr_status='Deleted'))); delete from osi where osi_assigned_to_usr_key in (select USR_KEY from USR where usr_status='Deleted'); delete from osh where osh_assigned_to_usr_key in (select USR_KEY from USR where usr_status='Deleted'); delete from rcd where rce_key in (select rce_key from rce,orc where rce.orc_key = orc.orc_key and orc.usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from rch where rce_key in (select rce_key from rce,orc where rce.orc_key = orc.orc_key and orc.usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from rcu where rce_key in (select rce_key from rce,orc where rce.orc_key = orc.orc_key and orc.usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from rcb where rce_key in (select rce_key from rce,orc where rce.orc_key = orc.orc_key and orc.usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from rce where orc_key in (select orc_key from orc where orc.usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from oio where orc_key in (select orc_key from orc where orc.usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from oiu where usr_key in (select USR_KEY from USR where usr_status='Deleted'); delete from oti where orc_key in (select orc_key from orc where orc.usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from osi where orc_key in (select orc_key from orc where orc.usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from orc where usr_key in (select USR_KEY from USR where usr_status='Deleted'); delete from upd where upp_key in (select upp_key from upp where upp.usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from upp where usr_key in (select USR_KEY from USR where usr_status='Deleted'); delete from usg where usr_key in (select USR_KEY from USR where usr_status='Deleted'); delete from uhd where uph_key in (select uph_key from uph where uph.usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from uph where usr_key in (select USR_KEY from USR where usr_status='Deleted'); delete from pcq where usr_key in (select USR_KEY from USR where usr_status='Deleted'); delete from rcu where usr_key in (select USR_KEY from USR where usr_status='Deleted'); delete from RECON_USER_MATCH where USR_KEY in (select USR_KEY from USR where usr_status='Deleted'); delete from RECON_ROLE_MATCH where RE_KEY in (select re_key from RECON_EVENTS where usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from RECON_ROLE_MEMBER_MATCH where RE_KEY in (select re_key from RECON_EVENTS where usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from RA_LDAPROLEMEMBERSHIP where RE_KEY in (select re_key from RECON_EVENTS where usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from RECON_HISTORY where RE_KEY in (select re_key from RECON_EVENTS where usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from RA_LDAPUSER where RE_KEY in (select re_key from RECON_EVENTS where usr_key in (select USR_KEY from USR where usr_status='Deleted')); delete from RECON_EVENTS where usr_key in (select USR_KEY from USR where usr_status='Deleted'); delete from usr where usr_key in (select USR_KEY from USR where usr_status='Deleted');
0 comments:
Post a Comment