在我們基於Oracle的產品數據庫上,我想查看被觸發的查詢數量。Oracle的查詢執行計數
背後的原因是,我們希望看到我們製作的網絡電話的數量以及防火牆如果將其移至雲系統時可能產生的影響。
select sum(EXECUTIONS)
from v$sql
where last_active_time >= trunc(sysdate)-2
and (parsing_schema_name like '%\_RW%' escape '\' or parsing_schema_name = 'TEMP_USER')
and module not in ('DBMS_SCHEDULER')
and sql_text not like '%v$sql%';
上面的查詢看起來不是很可靠,因爲SQL被推出內存,這是上面的返回。
有什麼方法可以從數據庫本身獲取我們在Oracle數據庫上進行的調用次數嗎?從所有應用程序登錄目前不是一個可行的選擇。
謝謝!
您是否在使用企業數據庫?你有AWR嗎? – alexgibbs
我們正在使用企業數據庫,我們有AWR。 – instanceOfObject
感謝instanceOfObject。很高興聽到。我想知道AWR視圖是否可能達到您的目標 - 例如,'DBA_HIST_SQLSTAT'包含許多關於SQL工作負載的數據(例如'EXECUTIONS_DELTA'),最近和累積的基礎上,每個SQL語句每個模式。負載,cpu等在那裏,可以'總結'等,並綁定到'parsing_schema_name'。通過選擇不同的'DBA_HIST_SNAPSHOT',可以在一天中的不同時間查看工作負載。我想知道這是否是您要查找的數據? – alexgibbs