2013-02-12 14 views
26

誰かがサーバ上でいくつかの更新SQLクエリを実行しました。これで多くの問題が起こっています。私は問題である正確なSQLクエリをトレースするために最後の2ヶ月間実行される更新クエリのリストが必要です。SQLクエリの履歴を調べる

あなたは私を助けてくれますか?

ありがとうございます!

答えて

43
select v.SQL_TEXT, 
      v.PARSING_SCHEMA_NAME, 
      v.FIRST_LOAD_TIME, 
      v.DISK_READS, 
      v.ROWS_PROCESSED, 
      v.ELAPSED_TIME, 
      v.service 
     from v$sql v 
where to_date(v.FIRST_LOAD_TIME,'YYYY-MM-DD hh24:mi:ss')>ADD_MONTHS(trunc(sysdate,'MM'),-2) 

where節は任意です。 FIRST_LOAD_TIMEに従って結果をソートし、2か月前までにレコードを見つけることができます。最近のSQLについては

+0

おかげBonsvr ..しかし、上記のSQLクエリは、実行されている今日のSQLのみを提供します。 –

+1

あなたのfirst_load_time列からセルを投稿してください。 – bonsvr

+0

申し訳ありませんが、私はあなたのポイントを取得していません.... –

20

:歴史のために

select * from v$sql 

select * from dba_hist_sqltext 
3

あなたが任意の日付の履歴を取得するには、このSQL文を使用することができます

SELECT * FROM V$SQL V where first_load_time LIKE '2015-05-04%';