Oracle审计参数

前端之家收集整理的这篇文章主要介绍了Oracle审计参数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
以下操作全是基于
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production

  1. 审计参数解析
    AUDIT_TRAIL启用或禁用数据库审计。当设置该参数为NONE或FALSE时,将禁止数据库审计;当设置该参数为OS时,将激活数据库审计,并将审计记录写入到OS审计跟踪文件中;当设置该参数为DB或TRUE时,将激活数据库审计,并将审计记录写入到数据字典SYS.AUD$中;当设置该参数为DB_EXTENDED时,不仅将审计记录写入到数据字典SYS.AUD$中,还会填充该数据字典的sqlBIND和sqlTEXT列。

取值说明:
none 禁用数据库审计
os 启用数据库审计,并将数据库审计记录定向到操作系统审计记录
db 启用数据库审计,并将数据库所有审计记录定向到数据库的SYS.AUD$表
db,extended 启用数据库审计,并将数据库所有审计记录定向到数据库的SYS.AUD$表。另外,填充SYS.AUD$表的sqlBIND 列和sqlTEXT CLOB 列。
xml 启用数据库审计,并将所有记录写到XML格式的操作系统文件中。
xml,extended 启用数据库审计,输出审计记录的所有列,包括sqlText和sqlBind的值。
2.查询当前数据库审计参数
查询当前审计参数 sql> show parameter audit_trail;

@H_301_25@

修改当前审计参数为DB_EXTENDED(这样可以查询到具体执行的sql)
① 执行sql> ALTER SYSTEM SET audit_trail=DB,EXTENDED SCOPE=SPFILE;
② 登陆数据库主机,切换到oracle用户用sysdba登陆用户
[[email protected] ~]$ sqlplus / as sysdba
③ 依次执行以下语句重启数据库 sql> shutdown immediate; sql> startup
④ 再次查询审计参数 sql> show parameter audit_trail;

Oracle审计参数

1.取消审计

noaudit insert,update,delete on testuser.tables;
testuser 用户模式
tables 表名

---添加审计
audit create table,update table,insert table,delete table by testuser by access;
audit execute procedure by testuser by access;

3.测试审计是否开启
① 执行sql> select * from dba_audit_trail;检查是否有相应的审计信息。

三、 迁移表空间
将审计信息迁移到非系统表空间、以防止系统表空间撑爆。
我们先创建一个叫audit_data的表空间来存放数据
CREATE TABLESPACE audit_data LOGGING DATAFILE ‘/data01/oracle/oradata/AUTODB/datafile/audit_data.dbf‘ SIZE 10240M AUTOEXTEND ON NEXT 100M MAXSIZE 12000M;

迁移表至新的表空间
sql> alter table audit$ move tablespace audit_data;

sql> alter index i_audit rebuild online tablespace audit_data;

sql> alter table audit_actions move tablespace audit_data;

sql> alter index i_audit_actions rebuild online tablespace audit_data;

sql>alter table AUD$ move tablespace audit_data;

查询表空间是否迁移成功的相关sqlsql> SELECT table_name,tablespace_name FROM dba_tables WHERE table_name IN (‘AUD$‘,‘FGA_LOG$‘,’AUDIT$’,’I_AUDIT’,’AUDIT_ACTIONS,’I_AUDIT_ACTIONS’) ORDER BY table_name;

猜你在找的Oracle相关文章