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

लंबे समय तक चलने वाले प्रश्नों के लिए Oracle डेटाबेस की जाँच कैसे करें

यह SQL दिखाता है जो वर्तमान में "सक्रिय" है:-

select S.USERNAME, s.sid, s.osuser, t.sql_id, sql_text
from v$sqltext_with_newlines t,V$SESSION s
where t.address =s.sql_address
and t.hash_value = s.sql_hash_value
and s.status = 'ACTIVE'
and s.username <> 'SYSTEM'
order by s.sid,t.piece
/

यह ताले दिखाता है। कभी-कभी चीजें धीमी हो जाती हैं, लेकिन ऐसा इसलिए होता है क्योंकि यह लॉक होने के इंतजार में ब्लॉक हो जाती है:

select
  object_name, 
  object_type, 
  session_id, 
  type,         -- Type or system/user lock
  lmode,        -- lock mode in which session holds lock
  request, 
  block, 
  ctime         -- Time since current mode was granted
from
  v$locked_object, all_objects, v$lock
where
  v$locked_object.object_id = all_objects.object_id AND
  v$lock.id1 = all_objects.object_id AND
  v$lock.sid = v$locked_object.session_id
order by
  session_id, ctime desc, object_name
/

लंबे ऑपरेशन (जैसे पूर्ण टेबल स्कैन) खोजने के लिए यह एक अच्छा है। अगर यह बहुत सारे छोटे ऑपरेशनों के कारण है, तो कुछ भी दिखाई नहीं देगा।

COLUMN percent FORMAT 999.99 

SELECT sid, to_char(start_time,'hh24:mi:ss') stime, 
message,( sofar/totalwork)* 100 percent 
FROM v$session_longops
WHERE sofar/totalwork < 1
/


  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 12c के साथ CLOB के रूप में संग्रहीत JSON सरणी में तत्वों की संख्या कैसे प्राप्त करें?

  2. मैं SYS के स्वामित्व वाली वस्तुओं पर ट्रिगर क्यों नहीं बना सकता?

  3. CLOB पर SUBSTR का प्रदर्शन

  4. पीएल/एसक्यूएल में फंक्शन कैसे बनाएं?

  5. एक चुनिंदा वक्तव्य में चर घोषित करना और सेट करना