oracle慢查詢的方法:1、查詢執行最慢的sql,代碼為【on sa.PARSING_USER_ID = u.user_id】;2、查詢次數最多的sql,代碼為【on u.USER_ID = s.PARSING_USER_ID) t】。
oracle慢查詢的方法:
Oracle沒有像MySql那樣同時設置參數來分析慢查詢,然而卻提供了慢查詢的sql語句,此Sql語句需要通過dba權限的帳號登錄進行查詢
1.查詢執行最慢的sql
select?* ?from?(select?sa.SQL_TEXT, ????????sa.SQL_FULLTEXT, ????????sa.EXECUTIONS?"執行次數", ????????round(sa.ELAPSED_TIME?/?1000000,?2)?"總執行時間", ????????round(sa.ELAPSED_TIME?/?1000000?/?sa.EXECUTIONS,?2)?"平均執行時間", ????????sa.COMMAND_TYPE, ????????sa.PARSING_USER_ID?"用戶ID", ????????u.username?"用戶名", ????????sa.HASH_VALUE ?????from?v$sqlarea?sa ?????left?join?all_users?u ??????on?sa.PARSING_USER_ID?=?u.user_id ?????where?sa.EXECUTIONS?>?0?where?u.username='填寫同戶名' ?????order?by?(sa.ELAPSED_TIME?/?sa.EXECUTIONS)?desc) ?where?rownum?<p>2.查詢次數最多的sql</p><pre class="brush:php;toolbar:false">select?* ?from?(select?s.SQL_TEXT, ????????s.EXECUTIONS?"執行次數", ????????s.PARSING_USER_ID?"用戶名", ????????rank()?over(order?by?EXECUTIONS?desc)?EXEC_RANK ?????from?v$sql?s ?????left?join?all_users?u ??????on?u.USER_ID?=?s.PARSING_USER_ID)?t ?where?exec_rank?<blockquote><p>相關學習推薦:<a href="https://www.php.cn/oracle/" target="_blank">oracle數據庫學習教程</a></p></blockquote>
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END