开发者

Oracle审计日志快速设置

开发者 https://www.devze.com 2024-10-09 09:02 出处:网络 作者: lnwd___
目录oracle审计日志设置参数说明查看审计功能是否开启关闭数据库审计功能开启审计功能总结Oracle审计日志设置
目录
  • oracle审计日志设置
    • 参数说明
    • 查看审计功能是否开启
    • 关闭数据库审计功能
    • 开启审计功能
  • 总结

    Oracle审计日志设置

    使用以下语句来更改 AUDIT_FILE_DEST 参数,以将审计日志写入 /audit_logs 目录:

    ALTER SYSTEM SET AUDIT_FILE_DEST='/audit_logs' SCOPE=SPFILE;

    赋予用户组

    chown -R oracle:dba /audit_logs

    通过sql语句将查询到的语句保存到文件中

    SELECT * FROM dba_audit_trail WHERE action_name LIKE '%SQL%' 
    INTO OUTFILE '/your/path/to/file.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"';
    

    Oracle 11g 安装后会默认开启数据库审计功能,并且日志保存在 SYSTEM 表空间中。

    导致SYSTEM 空间越来越大。当表空间已满时,会导致无法连接数据库。

    建议数据库安装完成之后将此功能关闭,当需要时候再进行开启。

    参数说明

    审计功能由参数 audit_trail 进行控制,取值范围及意义如下:

    参数取值 说明

    • DB (默认)开启审计功能。
    • OS 将审计记录写入操作系统的一个文件
    • TRUE 开启审计功能。
    • FALSE 关闭审计功能。
    • NONE 关闭审计功能。

    查看审计功能是否开启

    a)以 DBA 的身份登陆SQL plus ,以下所有命令均在此模式下执行;

    sqlplus / as sysdba

    b) 查看 audit_trail 的值

    SQL> SHOW PARAMETER AUDIT
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    audit_file_dest                      string      /data/app/oracle/admin编程客栈/orcl/ad
                                          android           ump
    audit_sys_operations                 boolean     FALSE
    audit_syslog_level                   string
    audit_trail                          string      DB

    根据查询结果可知,已经开启数据库审计功能。

    关闭数据库审计功能

    a编程客栈) 执行以下语句关闭数据库审计功能。

    ALTER SYSTEM SET AUDIT_TRAIL='NONE' SCOPE=SPFILE;

    b) 重启数据库

    SQL> shutdown immediate;
    SQL> startup;

    验证审计是否已经被关闭

    SQL> show parameter audit_trail
    
    NAME TYPE VALUE
    
    audit_trail string FALSE

    说明:VALUE值为FALSE,表面审计功能为关闭的状态

    开启审计功能

    SQL> alter system set audit_sys_operations=TRUE scope=spfile;--审计管理用户(以sysdba/sysoper角色登陆)
    SQL> alter system set audit_trail=db,extended scope=spfile; -- 这是将审计数据放入数据库中
    SQL> ALTER SYSTEM SET audit_trail='XML' SCOPE=spfile; -- 这是将审计数据放入xml文件中
    

    最后重启服务即可开启。

    删除审计日志:

    当已形成很对日志时,可删除里面的记录,目前是直接删除,未php对数据库造成影响。

    查询目前的日志信息:select * FROM SYS.AUD$;
    删除已有的审计信息:DELETE FROM SYS.AUD$;

    或者快速删除表信息:

    truncate table SYS.AU编程D$;

    一般建议部署完oracle后如不用审计功能,即关闭以节省空间。

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

    0

    精彩评论

    暂无评论...
    验证码 换一张
    取 消