Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

Oracle में शीर्ष 5 समय लेने वाली SQL क्वेरीज़

मैंने इस SQL ​​कथन को प्रारंभ करने के लिए एक उपयोगी स्थान के रूप में पाया (क्षमा करें, मैं इसका श्रेय मूल लेखक को नहीं दे सकता; मैंने इसे इंटरनेट पर कहीं पाया है):

SELECT * FROM
(SELECT
    sql_fulltext,
    sql_id,
    elapsed_time,
    child_number,
    disk_reads,
    executions,
    first_load_time,
    last_load_time
FROM    v$sql
ORDER BY elapsed_time DESC)
WHERE ROWNUM < 10
/

यह शीर्ष SQL कथनों को ढूँढता है जो वर्तमान में बीते हुए समय के क्रम में SQL कैश में संग्रहीत हैं। समय के साथ स्टेटमेंट कैश से गायब हो जाएंगे, इसलिए जब आप दोपहर में काम पर जाते हैं तो कल रात के बैच जॉब का निदान करने का प्रयास करना अच्छा नहीं हो सकता है।

आप डिस्क_रीड्स और निष्पादन द्वारा ऑर्डर करने का भी प्रयास कर सकते हैं। निष्पादन उपयोगी है क्योंकि कुछ खराब अनुप्रयोग एक ही SQL कथन को कई बार भेजते हैं। यह SQL मानता है कि आप बाइंड वैरिएबल का सही तरीके से उपयोग करते हैं।

फिर, आप sql_id ले सकते हैं और child_number एक बयान का और उन्हें इस बच्चे को खिलाओ:-

SELECT * FROM table(DBMS_XPLAN.DISPLAY_CURSOR('&sql_id', &child));

यह SQL कैश से वास्तविक योजना और SQL का पूरा पाठ दिखाता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle PL/SQL:स्टैक ट्रेस, पैकेज का नाम और प्रक्रिया का नाम कैसे प्राप्त करें

  2. ऑरैकल में कॉलम द्वारा दो टेबल कॉलम की तुलना कैसे करें

  3. वैध तिथि की जाँच करें जो varchar2 . में घोषित की गई है

  4. ऑरैकल डेटाबेस में तालिका का नाम बदलें कॉलम बदलें

  5. Oracle REGEXP_LIKE और शब्द सीमाएँ