Oracle

如何在數據庫中找到最新的 SQL 語句?

  • April 10, 2018

我喜歡在我的數據庫中獲取最新執行的語句以及性能指標。

因此,我想知道哪些 SQL 語句是 CPU/DISK 最密集的。

這是完成這項工作的 SQL。開庭審理。

第 1 步:確定安裝 ID 和使用者 ID。

SELECT inst_id,sid FROM gv$session WHERE username='<ENTER-USERNAME>';

第2步:

SELECT 
     s.sid
    ,s.CLIENT_INFO
    ,s.MACHINE
    ,s.PROGRAM
    ,s.TYPE
    ,s.logon_time
    ,s.osuser
    ,sq.sorts
    ,sq.DISK_READS
    ,sq.BUFFER_GETS
    ,sq.ROWS_PROCESSED
    ,sq.SQLTYPE
    ,sq.SQL_TEXT
FROM gv$session s    
   , gv$sql sq
WHERE s.SQL_HASH_VALUE = sq.HASH_VALUE
 AND s.inst_id = :inst_id -- replace with instID from above
 AND s.sid = :sid -- replace with ID from above
 AND sq.inst_id = s.inst_id

可能會返回多個 Id 和實例 Id。因此,如何在 Web 界面等中使用這些數據取決於使用者的選擇。

引用自:https://dba.stackexchange.com/questions/81