基于本教程,我已使用以下选项在数据库上配置审核:
AUDIT ALL BY db BY ACCESS;
AUDIT SELECT TABLE, UPDATE TABLE, INSERT TABLE, DELETE TABLE BY db BY ACCESS;
AUDIT EXECUTE PROCEDURE BY db BY ACCESS;
Run Code Online (Sandbox Code Playgroud)
我从java准备查询并运行SELECT查询.DBA_AUDIT_TRAIL表格显示我的SELECT查询,但SQL_TEXT和SQL_BIND字段为空.我怎么能看到它们?我应该启用任何其他选项吗?我正在使用Oracle 11.2 Express Edition.这是因为它是快递版吗?
列SQLTEXT和SQLBIND时才被填充AUDIT_TRAIL选项设置为db, extended.这是一个例子:
SQL> alter system set audit_trail=db,extended scope=spfile;
System altered
Run Code Online (Sandbox Code Playgroud)
重启实例.
SQL> audit select on your_table;
Audit succeeded
SQL> select sqltext from sys.aud$ where obj$name = 'YOUR_TABLE';
SQLTEXT
--------------------------------------------------------------------------------
null
SQL> select count(*) from your_table;
COUNT(*)
----------
3
SQL> select sqltext from sys.aud$ where obj$name = 'YOUR_TABLE';
SQLTEXT
--------------------------------------------------------------------------------
select count(*) from your_table
SQL>
Run Code Online (Sandbox Code Playgroud)