دیتابیس اوراکل

دیتابیس اوراکل
طبقه بندی موضوعی

۲ مطلب با موضوع «Tablespace» ثبت شده است

Purge UNIFIED AUDIT TRAIL

اگر بیشتر فضای SYSAUX  توسط UNIFIED AUDIT TRAILها اشغال شده باشد، برای purge کردن آن میتوان به صورت زیر اقدام کرد.

 

1-      فضای SYSAUX را توسط کوئری زیر چک میکنیم.

 

,select occupant_name

         ,occupant_desc         

         ,"(round(space_usage_kbytes / (1024 * 1024) "SPACE(G         

         ,schema_name         

         move_procedure         

  from v$sysaux_occupants

; order by 3 desc

 

2-     اگر بیشتر فضای SYSAUX توسط AUDSYS گرفته شده باشد، برای purge کردن اطلاعات آن میتوان به روش زیر اقدام کرد.


;SQL> select count(*) from unified_audit_trail

 

به 2 روش میتوان اطلاعات جدول بالا را purge کرد:

- پاک کردن تمام اطلاعات جدول


Flush from memory--

;SQL> exec dbms_audit_mgmt.flush_unified_audit_trail


Execute the Purge Procedure--

begin

  dbms_audit_mgmt.clean_audit_trail

)

,audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_UNIFIED

                                                     ,use_last_arch_timestamp  => FALSE

                                                 container => DBMS_AUDIT_MGMT.CONTAINER_CURRENT

;(

;end

 

 

- پاک کردن اطلاعات از یک تاریخی به بعد

 

begin

  dbms_audit_mgmt.set_last_archive_timestamp

)

,audit_trail_type    =>  dbms_audit_mgmt.audit_trail_unified

('last_archive_time => to_timestamp('02-DEC-2018','DD-MON-YYYY

 ;(

;end


;SQL> select * from dba_audit_mgmt_last_arch_ts


Flush from memory--

;SQL> exec dbms_audit_mgmt.flush_unified_audit_trail


Execute the Purge Procedure-- 

begin

 dbms_audit_mgmt.clean_audit_trail

)

 ,audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_UNIFIED

                                    ,use_last_arch_timestamp => TRUE

                                   container => DBMS_AUDIT_MGMT.CONTAINER_CURRENT

 ;(

;end


برای اینکه اینکار به صورت اتوماتیک انجام شود، میتوانید به صورت زیر یک job تعریف کنید.

begin


  dbms_scheduler.create_job (


    job_name        => 'PURGE_UNIFIED_AUDIT_TRAILS',


    job_type        => 'PLSQL_BLOCK',


    job_action      => 'declare

                        l_days NUMBER := 10;

                        begin 


                          dbms_audit_mgmt.set_last_archive_timestamp(DBMS_AUDIT_MGMT.AUDIT_TRAIL_UNIFIED, 

                                                                     TRUNC(SYSTIMESTAMP)-L_DAYS);

                          dbms_audit_mgmt.clean_audit_trail( audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_UNIFIED,

                                                             use_last_arch_timestamp => TRUE ,

                                                             container => DBMS_AUDIT_MGMT.CONTAINER_CURRENT );


                        END;',


    start_date        => SYSTIMESTAMP,


    repeat_interval => 'freq=daily; byhour=2; byminute=0; bysecond=0;',


    end_date         => NULL,


    enabled           => TRUE,


    comments        => 'Automatically set audit last archive time.');


end;

 

 n منابع 


نکاتی در مورد Temporary Tablespace

‫‫‫‫‫‫‫‫‫‫‫‫temporary tablespace ها شامل داده های ناپایدار هستند ، داده هایی که طول عمر آنها تنها محدود به طول عمر یک session میشود.                                                                                              

به طور مثال اگر ما یک sort داشته باشیم که در حافظه (RAM) جا نشود ، اوراکل برای انجام آن sort  از فضای temporary tablespace (که روی دیسک قرار دارد) استفاده میکند.  درواقع از فضای temporary tablespace  برای ذخیره کردن موارد زیر استفاده میشود :

         Intermediate sort results -

         Temporary tables and temporary indexes -

         Temporary LOBs -

         Temporary B-trees -