我把aud$表移到其他表空间,数据越来越多,可以删除该表的内容吗?需要删除相关联表的数据吗

解决方案 »

  1.   

    可以直接删除sys.aud$的审计记录就行了,
    其它基本上都是以此表建立的视图!
      

  2.   

    如果当我们设定了audit_trail=DB后,则相关的审计的信息会被记录到sys.aud$表中。如果我们开启的审计对象较多的话,会导致表sys.aud$无限增长,如果我们没有好的归档方式或计划就会导致system异常扩大。我们可以通过下在面的脚本来移动sys.aud$表到其它的定制的表空间:
    conn sys as sysdba
    create tablespace "AUDIT" 
    datafile '$HOME/data/aud01.dbf' size 500k 
    default storage (initial 100k next 100k pctincrease 0) 

    create table audx tablespace "AUDIT" 
    storage (initial 50k next 50k pctincrease 0) 
    as select * from aud$ where 1 = 2 

    rename AUD$ to AUD$$ 

    rename audx to aud$ 

    create index i_aud2
    on aud$(sessionid, ses$tid)
    tablespace "AUDIT" storage(initial 50k next 50k pctincrease 0)
    /