oracle 10g之前,可以审计对表的操作,但不能记录操作时的各个列的值。在10g中,已经可以审核并监控到具体的sql语句及内容了。
要求10g以后的版本。
alter system set audit_trail=db_extended scope=spfile;
示例;
SQL> show user
User is "TEST"
SQL> desc a;
Name Type Nullable Default Comments
---- ------------ -------- ------- --------
ID INTEGER Y
NAME VARCHAR2(10) Y
sys:
SQL> audit INSERT on test.a by access ;
审计已成功。
test:
SQL> INSERT INTO A VALUES(1,’10’);
1 row inserted
SQL> commit;
完成后。
检查系统审计表:
SQL> select username,obj_name,sql_text FROM DBA_AUDIT_TRAIL WHERE USERNAME=’TEST’ and obj_name=’A’ AND SQL_text is not null;
USERNAME OBJ_NAME SQL_TEXT
TEST A
INSERT INTO A VALUES(1,’10’)
完成后,记得关闭审计
SQL> noaudit INSERT on test.a ;
3COME考试频道为您精心整理,希望对您有所帮助,更多信息在http://www.reader8.com/exam/