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
通常我們新裝好一個資料庫中查詢審計開關的時候,可能會發現它的設定為DB。(預裝設定,如果為其他表示被認為設定過)
SQL>show parameter audit_trail Name TYPE VALUE
--------------------------------------------------------------
audit_trail string DB
audit_trail=DB,代表的是,oracle將把每次審計跟蹤記錄在資料庫的一張叫做AUD$的表中。
SQL>select owner,table_name,tablespace_name from dba_tables a where a.table_name ='AUD$' OWNER TABLE_NAME TABLESPACE_NAME
--------------------------------------------------------------
SYS AUD$ SYSTEM
而這張表所在的表空間,正式oracle資料庫最重要的SYSTEM表空間。
由於這個表空間非常特殊:如果此時它正好被設定為自動擴充套件(AUT=YES)的話:
SQL>select a.tablespace_name,a.bytes,a.autoextensible from dba_data_files a where a.tablespace_name='SYSTEM' TABLESPACE_NAME BYTES AUT
--------------------------------------------------------
SYSTEM 2147473648 YES
長此以往,SYSTEM表空間最終會因為過度肥胖把磁碟撐爆。
(反過來,如果SYSTEM表空間的autoextensible=NO,AUD$表就沒地方寫就會報錯無法分配空間)
SO,有點資料庫就會根據情況,將審計功能“關閉”:
1.設定審計引數關閉
SQL>alter system set audit_trail=none scope=spfile;
2.重啟資料庫
SQL>shutdown immediate; SQL>startup;
這時候小夥伴以為高枕無憂了,其實,oracle早有準備,有一個叫強制審計的變態功能在等著你。
只要你敢
- 用SYSDBA或者SYSOPER許可權登入資料庫
- 敢startup
- 敢shutdown
oracle就給你在$ORACLE_BASE/admin/$ORACLE_SID/adump 目錄中記.aud的檔案
所以,
開了DB功能,會同時將審計日誌記在AUD$表中和作業系統aud檔案中。
設定為NONE,仍然會而且毫無其他辦法的將記錄在作業系統aud檔案中。
*資料庫的表為:sys.aud$
*作業系統目錄為:$ORACLE_BASE/admin/例項名/adump/
可透過SQL>show parameter audit 查詢到)
是不是很變態?
所以這個目錄長期不清理的話,會積壓大量*.aud檔案
長期大量不刪除的話,會影響到作業系統inodes
所以,小夥伴們:
- 如果為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檔案。
注意:不要直接刪除adump目錄,否則,你會sqlplus不了資料庫。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/438414/viewspace-2151054/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- AUDIT_TRAIL設定及審計日誌清理AI
- Oracle:審計清理Oracle
- oracle清理監聽日誌Oracle
- Oracle歸檔日誌清理Oracle
- vertica審計日誌
- 日誌審計系統
- mysql審計日誌-ProxySQLMySql
- 日誌審計是什麼?為什麼企業需要日誌審計?
- oracle歸檔日誌過滿清理Oracle
- mysql清理日誌MySql
- 清理日誌 scripts
- 如何清理日誌
- 最佳實踐(保持、清理ORACLE alert日誌)Oracle
- .Net Core 審計日誌實現
- Oracle之備份和清理監聽日誌、告警日誌指令碼Oracle指令碼
- rac scan listener log 清理監聽日誌 oracleOracle
- Docker容器日誌清理Docker
- 最全 Kubernetes 審計日誌方案
- wazuh日誌審計--定製規則
- 通過日誌審計追蹤外部***
- docker 容器日誌清理方案Docker
- PeopleSoft日誌檔案清理
- rman清理歸檔日誌
- 請問日誌審計什麼意思呢?
- mysql 系統審計日誌格式說明:MySql
- 利用 ELK 處理 Percona 審計日誌
- Oracle 跟蹤/告警/監聽日誌的清理指令碼Oracle指令碼
- Oracle11g清理資料庫歷史日誌Oracle資料庫
- 日誌檔案過大清理
- Mongodb預設日誌的清理!MongoDB
- 【LOG】Oracle資料庫清理日誌、跟蹤檔案利器Oracle資料庫
- online清理oracle 監聽日誌推薦的做法Oracle
- 日誌服務之敏感資訊脫敏與審計
- 深度解讀RDS for MySQL 審計日誌功能和原理MySql
- 什麼樣的日誌審計產品才能達到合規要求——日誌易
- 【ZooKeeper Notes 9】ZooKeepr日誌清理
- SQLServer資料庫日誌清理 清除sqlserver2005日誌SQLServer資料庫
- mariadb審計日誌通過 logstash匯入 hiveHive