Oracle 審計文件


Oracle審計功能:

     Oracle11g推出了審計功能,但這個功能會針對很多操作都產生審計文件.aud,日積月累下來這些文件也很多,
默認情況下,系統為了節省資源,減少I/0操作,其審計功能是關閉的

一、審計功能關閉


1、查看審計功能是否開啟?
su – oracle
sqlplus “/as sysdba”
SQL> show parameter audit_trail

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
audit_trail                          string      DB
說明:VALUE值為DB,表面審計功能為開啟的狀態

 audit_trail=DB,代表的是,oracle將把每次審計跟蹤記錄在數據庫的一張叫做AUD$的表中。

 audit_trail=os , oracle將把每次審計跟蹤記錄在os文件系統中方便調取

2、關閉oracle的審計功能
SQL> alter system set audit_trail=FALSE scope=spfile;
System altered.

3、重啟數據庫
SQL> shutdown immediate;
SQL> startup;

 

4、驗證審計是否已經被關閉
SQL> show parameter audit_trail

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
audit_trail                          string      FALSE
說明:VALUE值為FALSE,表面審計功能為關閉的狀態

 

oracle 審計日志清理

--進入審計日志目錄:

cd $ORACLE_BASE/admin/$ORACLE_SID/adump

--刪除3個月前的審計文件:

find ./ -type f -name "*.aud" -mtime +91|xargs rm -f

--一次清空所有審計文件

find ./ -type f -name "*.aud"|xargs rm-f

find ./ -mtime +7 -name "*.aud" -type f –delete

 

強制審計的變態功能:

1.用sysdba或者sysoper權限登陸數據庫

2.startup

3.shutdown

這幾個操作都會記錄在$ORACLE_BASE/admin/$ORACLE_SID/adump 目錄中記錄.aud的文件.

所以,開啟了DB功能,會同時將審計日志記錄在AUD$表中和操作系統aud文件中.

         設置為NONE,仍然會毫無辦法的將記錄在操作系統aud文件中.

 數據庫的表為 sys.aud$

 操作系統目錄為:$ORACLE_BASE/admin/實例名/adump

 可通過 >show parameter audit查詢到

所以,小伙伴們:

  • 如果為DB,記得定期清空aud$表
SQL>truncate table sys.aud$;
  • 如果你不想用DB功能,可以設置關閉
SQL>alter system set audit_trail=none scope=spfile;

注意,需要重啟數據庫

SQL>shutdown immediate;
SQL>startup;
  • 如果為NONE,記得清空aud文件或者配置crontab定時任務定時清空aud文件。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM