1. 程式人生 > 資料庫 >對於oracle對session進行跟蹤的分析

對於oracle對session進行跟蹤的分析

跟蹤 session 的活動,Oracle 提供了很多種手段,不僅可以對當前連線的 session 進行跟蹤, 也可以對其他使用者的 session 進行跟蹤;通過對 trace 檔的分析,不僅可以掌握該 session 的活動, 也可以找出這個 session 中的瓶頸所在,對 session 的跟蹤是 DBA 進行系統調優、故障診斷的常用方法。

對當前會話的活動進行跟蹤及停止跟蹤:

alter session set sql_trace=true/false

對任意的 session 進行跟蹤及停止跟蹤:

exec dbms_system.set_sql_trace_in_session(&sid,&serial#,&sql_trace);
alter session set events '&event trace name context forever,level &level';
alter session set events '&event trace name context off';
exec dbms_system.set_ev(&sid,&event_10046,&level_12,'');
oradebug event 10046 trace name context forever,level 12

利用 Event、SQL Trace 工具等可以收集 SQL 的效能狀態資料並把這些資料記錄到跟蹤檔案中,這個跟蹤檔案提供了許多有用的資訊,如解析次數、執行次數、CPU 使用時間、物理讀、邏 輯讀等,這些資訊是判斷 SQL 效能優劣的依據。

user_dump_dest 引數說明了生成跟蹤檔案的目 錄,設定 SQL Trace 首先要在 init&sid.ora 中設定 timed_statistics 為 true,這樣才能得到那些重要 的時間資訊,由於 SQL Trace 生成的 trace 檔案讀起來很困難,最好用 TKPROF 工具對其進行解釋。

總結

本文有關oracle對session進行跟蹤的分析的內容就到這裡,希望對大家有所幫助。感興趣的朋友可以繼續瀏覽:oracle 虛擬專用資料庫詳細介紹 、Oracle分頁查詢效能優化程式碼詳解 、Oracle建立帶有引數的檢視程式碼介紹等。感謝大家對本站的支援。