Oracle BDD

#Création de procedure et purge de ligne 
CREATE PROCEDURE PR_PURGE_WMERROR_LINES
IS
BEGIN
delete from WEBMETHODS.WMERROR where AUDITTIMESTAMP<(trunc(sysdate-7) - TO_DATE('1970-01-01', 'YYYY-MM-DD'))*86400000;
commit;
END;
/
begin
dbms_scheduler.create_job(job_name => 'Job_Purge_WMERROR_LINES',
                          job_type => 'STORED_PROCEDURE',
              job_action => 'PR_PURGE_WMERROR_LINES',
                          start_date => sysdate,
                          end_date => NULL,
                          repeat_interval => 'freq=daily;byhour=1;byminute=00;bysecond=0;',
                          enabled => true,
                          comments => 'purge WMERROR tous les jours');
  end;
  /
  
begin
DBMS_SCHEDULER.DROP_JOB(JOB_NAME => 'Job_Purge_WMERROR_LINES');
end;
  /

#Supprimer la procedure
DROP PROCEDURE PR_PURGE_WMERROR;


#Purge de Table
CREATE PROCEDURE PR_PURGE_WMERROR
IS
BEGIN
execute immediate 'TRUNCATE TABLE WEBMETHODS.WMERROR';
END;
  
begin
dbms_scheduler.create_job(job_name => 'Job_Purge_WMERROR',
                          job_type => 'STORED_PROCEDURE',
              job_action => 'PR_PURGE_WMERROR',
                          start_date => sysdate,
                          end_date => NULL,
                          repeat_interval => 'freq=weekly;byday=WED,SAT;byhour=1;byminute=00;bysecond=0;',
                          enabled => true,
                          comments => 'purge WMERROR le mercredi et samedi');
  end;
  /


#Password unlimited
Se connecter en sysdba sur la DB.
Vérifier le nom des profils des users :
select USERNAME,PROFILE from dba_users;

Vérifier l’état de la ressource PASSWORD_LIFE_TIME qui commande la durée de vie des mots de passe (défaut 180=6 mois).
select profile,resource_name,resource_type,limit from dba_profiles where resource_name='PASSWORD_LIFE_TIME';

Si besoin (différent de UNLIMITED ou DEFAULT), changer la valeur du paramètre :
alter PROFILE <nom_profile> LIMIT PASSWORD_LIFE_TIME UNLIMITED;

Pour le profile “default” :
alter profile default limit PASSWORD_LIFE_TIME UNLIMITED;


#Augmentez la vitesse d'execution des scripts
alter session set sort_area_size=2000000000;

La sort_area est un espace mémoire utilisé par la DB pour effectuer ses tris.
Le paramètre sort_area_size modifié dans une session permet de définir une zone de tri plus importante dans la RAM pour accélerer différentes opérations nécessitant un tel espace.
Exemple un rebuild d'index, un alter table move
Il doit etre spécifié en bytes:
alter session set sort_area_size=<bytes>;
si la zone de tri n'est pas assez importante le TEMP est utilisé.

Aucun commentaire:

Enregistrer un commentaire