![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 泡泡龍 ![]()
![]() ![]() |
1. 忙碌中的 session 哪幾個? 2. 指定的 session 正在執行甚麼 SQL 3. 指定的 session 正在執行 SQL , 是哪一種 scan ? |
1樓
最有價值解答
花旗蔘 ![]() |
本篇文章回覆於2014-03-04 21:14
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
2樓
作者回應
泡泡龍 ![]() ![]() |
可以再請教一下, 第三點 看不太懂, 是否可以再詳細一點點嗎?
本篇文章回覆於2014-03-13 07:58
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
3樓 |
哪裡不懂?
本篇文章回覆於2014-03-18 12:49
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
4樓
作者回應
泡泡龍 ![]() ![]() |
感謝您的回覆~
不好意思~ 其實我專職是程式設計, 不是DBA, 比較少跟別人討論 DATABASE, 我是針對回覆的說法看不太懂 例如: from TABLE(dbms_xplan.display_awr('&SQL_ID')) from 應該是 TABLE 名稱, 怎麼會接 (dbms_xplan.display_awr('&SQL_ID')) 這一串, 我的意思是, 我不清楚我要怎麼去解讀的意思啦~ 補充說明, 其實我最終是想從 PB 正在執行的程式所下的 SQL 中, 去掃找出使用 Full Scan, 但是可以改進的 SQL Where 語法, 或是重寫程式, 因為掃出 SID 就可以知道哪一台電腦, 那台電腦執行些甚麼程式, 這些程式中哪一隻會執行 Full SCAN 的語法, 然後改程式. 程式有幾百隻(一隻程式執行中就下一大堆亂七八糟SQL), 幾十人經手十幾年歷史的程式了, 很難一隻一隻去看及檢查~ 想先處理比較耗資源並且常用的重點程式調整啦
本篇文章回覆於2014-03-18 16:04
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
5樓 |
google "oracle table function" 你就了解了!
本篇文章回覆於2014-03-19 13:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
6樓
作者回應
泡泡龍 ![]() ![]() |
用程式執行中, 用下面 SQL 查詢, 有資料, 並且知道 SID = 141
SELECT nvl(ses.username,'ORACLE PROC')||' ('||ses.sid||')' USERNAME, SID, MACHINE, REPLACE(SQL.SQL_TEXT,CHR(10),'') STMT, ltrim(to_char(floor(SES.LAST_CALL_ET/3600), '09')) || ':' || ltrim(to_char(floor(mod(SES.LAST_CALL_ET, 3600)/60), '09')) || ':' || ltrim(to_char(mod(SES.LAST_CALL_ET, 60), '09')) RUNT FROM V$SESSION SES, V$SQLtext_with_newlines SQL where SES.STATUS = 'ACTIVE' and SES.USERNAME is not null and SES.SQL_ADDRESS = SQL.ADDRESS and SES.SQL_HASH_VALUE = SQL.HASH_VALUE and Ses.AUDSID <> userenv('SESSIONID') order by runt desc, 1,sql.piece; 但是接著用以下的查詢( Ctrl+v 不放 ), 就一直都沒有資料, 是應該要注意甚麼? 還是我漏了甚麼?? 還是我弄錯甚麼? SQL> select * from table( dbms_xplan.display_cursor( 141)); PLAN_TABLE_OUTPUT -------------------------------------------------------------- HASH_VALUE: 141, child number: 0 cannot be found SQL> select * from table( dbms_xplan.display_awr(141)); 沒有任何資料列被選取 SQL> select * from table( dbms_xplan.display_cursor('141')); PLAN_TABLE_OUTPUT -------------------------------------------------------------- HASH_VALUE: 141, child number: 0 cannot be found SQL> select * from table( dbms_xplan.display_awr('141')); 沒有任何資料列被選取
本篇文章回覆於2014-03-19 16:18
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
7樓 |
你要輸入的是 sql_id 而非sid(session identifier)
本篇文章回覆於2014-03-19 17:22
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
8樓
作者回應
泡泡龍 ![]() ![]() |
之前太忙了, 最近有空, 終於串出我要的SQL...
本篇文章回覆於2014-06-25 17:01
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
回覆 |
如要回應,請先登入. |