You are on page 1of 1

Author – A.

Kishore/Sachin
http://appsdba.info

How to Truncate, Delete, or Purge Rows from the Audit Trail Table
(SYS.AUD$)

This document describes, how to truncate, delete or purge rows from Audit Trail Table.

 To delete rows from the database audit trail table
We should have an appropriate privilege to delete rows from audit table. We must
either be the user SYS, or a user with DELETE ANY TABLE system privilege, or a user
to whom SYS has granted the object privilege DELETE on SYS.AUD$.
 To purge audit records
o We need to delete all rows from the audit trail table.
DELETE FROM sys.aud$;
o To delete rows from the audit trail related to a particular audited table:
DELETE FROM sys.aud$ WHERE obj$name='';

 To archive or Copy audit trail information.
For this we can use any one of the following sql statements.
CREATE TABLE
AS SELECT * from sys.aud$ WHERE 1=2;
OR
INSERT INTO
SELECT FROM sys.aud$
OR
Export to an OS file using the exp command, but do not export SYS.AUD$
directly.

 Reducing the size of the audit trail:

o If you want to save information currently in the audit trail, copy it to another
table and optionally export that table.For this we need to issue the following:
SQL> connect / as sysdba
SQL> TRUNCATE TABLE sys.aud$;
Truncate uses the DROP STORAGE clause which keeps 'minextents' extents,thus
only 1 extent.

 Reload archived audit trail records:
We can reload archived audit trail records from the export file or back up. The rows
inserted require as many extents as necessary to contain current audit trail rows,
but no more.
1