重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛

标题: oracle 审计日志清理 [打印本页]

作者: jiawang    时间: 2026-1-5 17:45
标题: oracle 审计日志清理
本帖最后由 jiawang 于 2026-1-6 10:24 编辑

进入审计日志目录:
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

确认当前审计状态:

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
而这张表默认属于system表空间


关闭审计功能
修改AUDIT_TRAIL参数为NONE(需重启生效):
ALTER SYSTEM SET AUDIT_TRAIL='NONE' SCOPE=SPFILE;
关键参数说明:
SCOPE=SPFILE:确保参数修改持久化到参数文件
NONE:完全禁用审计功能,停止生成所有审计日志


重启数据库生效
执行以下命令完成重启:
SHUTDOWN IMMEDIATE;

STARTUP;


验证关闭结果
再次检查参数值确认审计已关闭:
SHOW PARAMETER AUDIT_TRAIL;
NAME                 TYPE        VALUE
-------------------- ----------- -----

audit_trail          string      NONE


历史日志清理
关闭审计前可清理旧日志释放空间:
TRUNCATE TABLE SYS.AUD$;  -- 清理标准审计日志










欢迎光临 重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛 (http://bbs.cqsztech.com/) Powered by Discuz! X3.2