2016-07-05 41 views
0

クエリのSQL IDがあります。これで、このクエリが実行されたマシンのマシン名とIPを取得します。ORACLEでsql idを使用して実行されたSQLクエリのマシン名/ IPアドレスを取得する方法

V $ SESSIONおよびV $ ACTIVE_SESSION_HISTORYでSQL IDをすでにチェックしていますが、結果が得られませんでした。

v $ sqlでidを見つけることができました.LAST_LOAD_TIMEは今日(2016年7月7日)です。

select LAST_LOAD_TIME from v$sql where SQL_ID='0jf4618m2u7aw' order by LAST_LOAD_TIME desc; 
2016-07-04/17:26:02 
2016-07-04/17:26:02 


select * from V$SESSION where SQL_ID='0jf4618m2u7aw'; 
no rows selected 

select * from V$ACTIVE_SESSION_HISTORY where SQL_ID='0jf4618m2u7aw'; 
no rows selected 

助けてください。前もって感謝します。

答えて

0

あなたはオプションのカップルを持っている...

それはアクティブなセッション/プロセスである場合は、V $ SESSIONおよびV $プロセスを使用することができますが:

SELECT DISTINCT 
     MACHINE, 
     UTL_INADDR.GET_HOST_ADDRESS(MACHINE) AS IP_ADDR 
FROM V$SESSION S, 
     V$PROCESS P 
WHERE S.PADDR = P.ADDR 
AND  S.SQL_ID = '0jf4618m2u7aw'; 

あなたは歴史的なビューをしたい場合DBA_HIST_ACTIVE_SESS_HISTORYはあなたの友人かもしれません:

SELECT DISTINCT 
     MACHINE, 
     UTL_INADDR.GET_HOST_ADDRESS(MACHINE) AS IP_ADDR 
FROM DBA_HIST_ACTIVE_SESS_HISTORY DHASH 
WHERE DHASH.SQL_ID = '0jf4618m2u7aw' 
AND  DHASH.SQL_EXEC_START > TRUNC(SYSDATE); 
+0

お返事ありがとうございます。 2番目の問合せを使用していますが、エラーが発生しています」エラー・メッセージ: SQLエラー:ORA-00904:「MACHINE」:無効な識別子 00904 00000 - "%s:無効な識別子" *原因: – Tajinder

+0

間違いなく11gr2で利用可能です。 10gでは使用できません。あなたの質問には11gのタグが付きます。 10gを使用しているのか、11gr1を使用しているのか、11gr2まで利用できないのか不思議です。 'v $ instanceからバージョンを選んでください ' –

+0

はい、そうです。私は11gr1でクエリを実行しています。 11gr1でこれをどうすればいいのか教えてください。 – Tajinder

関連する問題