oracle 11.2.0.1审计表AUD$清理,以及迁移审计表空间

oracle 11.2.0.1审计表AUD$清理

数据库版本:
ORACLE 11.2.0.1

之前一直常用的版本是11.2.0.4,按经验执行执行如下命令清理:

TRUNCATE TABLE SYS.AUD$ reuse storage;

但是报错了,纳闷,不解啊,这是为什么呢?
在这里插入图片描述
尝试统计以下aud$表的数据量,是可以正常统计出来的。
在这里插入图片描述
见鬼了,这究竟是为什么呢,于是,想着从dba_objects查询表的OWNER,果然,原来是OWNER是SYSTEM,而不是SYS,SYS的只是一个同义词,所以执行trncate table的时候报错了。
oracle 11.2.0.1审计表AUD$清理,以及迁移审计表空间_第1张图片
知道原因后,后面的就好处理,直接改成SYSTEM顺利执行

oracle 11.2.0.1审计表AUD$清理,以及迁移审计表空间_第2张图片

至此,审计表清理完成。

下一步是迁移审计表空间。

SQL> BEGIN
  2  DBMS_AUDIT_MGMT.set_audit_trail_location(
  3  audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD,
  4  audit_trail_location_value => 'TBS_AUDIT');
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL> BEGIN
  2  DBMS_AUDIT_MGMT.set_audit_trail_location(
  3  audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_FGA_STD,
  4  audit_trail_location_value => 'TBS_AUDIT');
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL> SELECT table_name, tablespace_name FROM dba_tables WHERE table_name IN ('AUD$', 'FGA_LOG$') ORDER BY table_name;


TABLE_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
AUD$                           TBS_AUDIT
FGA_LOG$                       TBS_AUDIT

你可能感兴趣的:(数据库运维案例分享,oracle,数据库)