目录

Oracle迁移审计表AUD$

目录

创建 audit 表空间

1
SQL> create tablespace audit_data datafile '/data/oracle/oradata/orcl/audit01.dbf' size 100m autoextend on next 50m;

将 AUD$ 从 SYSTEM 表空间迁移到新的表空间

注意如果sys.aud$很大,不需要可以先 truncate,不然移动会很慢。也可能会提示空间不够。

查看当前审计数据大小

1
SQL> select segment_name,bytes/1024/1024 from dba_segments where segment_name='AUD$';

清空 AUD$

1
SQL> TRUNCATE TABLE SYS.AUD$ REUSE STORAGE;

将 AUD$ 从 SYSTEM 表空间迁移到新的表空间

1
2
3
4
5
BEGIN
DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_LOCATION(audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_DB_STD,
audit_trail_location_value => 'audit_data');
END;
/

设置审计记录清除间隔

1
2
3
4
5
6
BEGIN
DBMS_AUDIT_MGMT.init_cleanup(
audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_ALL,
default_cleanup_interval => 120 /* hours */);
END;
/