簡體   English   中英

Oracle DB審核全部

[英]Oracle DB Audit ALL

我有一個5TB的大型數據庫。

我想審核所有內容,實際上是所有內容。

首先,我嘗試使用AUDIT ALL ,但是根據Oracle的文檔AUDIT ALL does NOT審核所有內容 ...

我知道必須執行此語句才能開始審核數據庫:

 alter system set audit_trail=db,extended scope=spfile;

但是,我應該怎么做才能開始審核用戶執行的所有SQL語句?

如果只想查看數據庫中的用戶查詢( SELECTUPDATEINSERT ),則不需要使用AUDIT功能。 $AUD包含DDL語句 ,而V$SQL僅包含DML語句

一個非常簡單的解決方案是使用另一個視圖: V$SQL 您可以從中提取持續時間和許多有用的信息。

有用的例子:

  SELECT * FROM v$sql vv
   WHERE lower(vv.SQL_TEXT) like '%delete%'
     AND vv.PARSING_SCHEMA_NAME like 'A_SCHEMA%'
ORDER BY  vv.LAST_ACTIVE_TIME desc;

V$SQL列出不具有GROUP BY子句的共享SQL區域的統計信息,並為輸入的原始SQL文本的每個子項包含一行。 V$SQL中顯示的統計信息通常在查詢執行結束時進行更新。

長時間運行的查詢每5秒更新一次。 這顯示了長時間運行的SQL仍在起作用的影響。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM