巧用dba_hist_active_sess_history跟蹤某個時間段內SQL
昨日由於應用資料更改有誤,開發商也不知道是那條sql導致的資料出現偏差,於是要我協助查詢和該表相關的update語句,幾經周折下,找到了dba_hist_active_sess_history檢視,該檢視資料來自於V$ACTIVE_SESSION_HISTORY。其中dba_hist_active_sess_history檢視的記錄了記憶體中活動會話的歷史資訊,而動態效能檢視V$ACTIVE_SESSION_HISTORY則記錄了當前活動會話資訊。
透過dba_hist_active_sess_history檢視關聯v$sqlarea和DBA_HIST_SNAPSHOT可以跟蹤到某個時間段內的sql。當然能跟蹤到的sql多少取決於v$sqlarea,畢竟只有還保留在v$sqlarea中的sql才能跟蹤到。
select to_char(b.begin_interval_time,'yyyy-mm-dd hh24:mi:ss') update_time,c.sql_text sql_text
下面是根據客戶需求寫的查詢,查詢2011-12-28日對dj_sz表的update語句
from dba_hist_active_sess_history a,DBA_HIST_SNAPSHOT b,v$sqlarea c
where a.snap_id=b.snap_id
and a.sql_id=c.sql_id
and b.begin_interval_time>=to_date('2011-12-28','yyyy-mm-dd') and
b.begin_interval_time < to_date('2011-12-29','yyyy-mm-dd')
and lower(c.sql_text) like '%update%dj_sz%'
order by update_time;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29209863/viewspace-2128010/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- iOS-OC-判斷某個時間是否處於某個時間段內iOS
- 查詢過去一段時間內某條sql使用的臨時表空間大小SQL
- JS實現檢查給定時間範圍是否在每天的某個時間段內JS
- 分享一個查詢某個使用者過去一段時間內執行的SQL語句。SQL
- 限制使用者在某個時間段內禁止登入資料庫資料庫
- Mac好用的時間跟蹤器Mac
- 如何限制使用者在某個時間段內禁止登入資料庫資料庫
- JS判定一個給定的時間在某個時間範圍內JS
- 統計某個時間段的歸檔日誌大小
- SQL時間段查詢SQL
- mac的cpu某段時間佔用很高Mac
- 程式碼段——C#判斷時間是否在某個範圍C#
- 從MongoDB compass中匯出某個時間段的資料MongoDB
- Timemator自動化時間跟蹤軟體
- JS判定一個給定的時間區間在哪些時間段範圍內JS
- PHP結合Redis來限制使用者或者IP某個時間段內訪問的次數PHPRedis
- 查詢某時間段的統計資料
- SQLServer進行SQL跟蹤SQLServer
- 會話級SQL跟蹤會話SQL
- SQL 的跟蹤方法traceSQL
- 好用的時間跟蹤定時器:Eon Timer for Mac定時器Mac
- pl/sql dev在debug時不能單步跟蹤SQLdev
- 一款小巧的時間跟蹤器:Klokki for MacMac
- Timemator for Mac(自動化時間跟蹤軟體)Mac
- 判斷一個時間是否處於指定的時間段內程式碼例項
- Oracle資料庫跟蹤SQLOracle資料庫SQL
- phalcon:跟蹤sql語句SQL
- sql server跟蹤資料庫SQLServer資料庫
- SQL跟蹤工具和TKPROF使用SQL
- 跟蹤 sql 的trace檔案SQL
- 跟蹤使用者的SQLSQL
- sql_trace跟蹤工具(轉)SQL
- 計算某時間段內ERP中的節假日中應排除的天數
- 程式碼效能分析-Dottrace跟蹤程式碼執行時間
- find 命令刪除某類或某段時間前的檔案指令碼指令碼
- 如何檢視某個使用者指定時間段的ABAP開發記錄
- 跟蹤SQL - SQL Trace 及 10046 事件SQL事件
- oracle跟蹤常用內部事件號Oracle事件