Oracle
Oracle 表上的目前活動會話
我正在執行一個通過 Datastage 更新 Oracle 表的查詢。該查詢需要很長時間才能執行,因此我想檢查數據庫中該 Oracle 表上的查詢/會話並確定查詢的執行方式。
有人可以建議我如何檢查數據庫中的活動查詢/會話嗎?
我正在使用數據庫視覺化工具。
Tuning Pack 有一個稱為 Real Time SQL Monitoring 的功能。它可以在 SQL Developer、OEM 中獲得,或者理論上可以通過一些包呼叫獲得——但您確實需要此報告的 GUI。
您可以在計劃執行時查看計劃的每個步驟,並查看等待事件是什麼。如果它沒有以您期望的並行化程度執行,您也會立即看到。
我們的常駐數據庫性能專家 Maria Colgan 在此處就該主題撰寫了出色的文章。
您可以嘗試此查詢一次。此查詢顯示 SQL 目前活動的數據庫
select S.USERNAME, s.sid, s.osuser, t.sql_id, sql_text from v$sqltext_with_newlines t,V$SESSION s where t.address =s.sql_address and t.hash_value = s.sql_hash_value and s.status = 'ACTIVE' and s.username <> 'SYSTEM' order by s.sid,t.piece