SORU
7 Mart 2009, CUMARTESİ


Ne kadar uzun süre çalışan sorguları için oracle veritabanı kontrol etmek için?

Oracle bir veritabanı kullanan uygulama, yavaş gidiyor ya da tamamen durmuş gibi görünüyor.

Ne kadar sorguları daha çok inceleyebilirim yani en pahalı olan alınır.

CEVAP
9 Mart 2009, PAZARTESİ


Bu bir SQL gösterir şu anda "": - . AKTİF

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
/

Bu kilitler gösterir. Bazen işler yavaş gidiyor, ama bir kilit için bekleyen engellendiği için:

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
/

Bu uzun bir işlem (örneğin tam tablo taraması) bulmak için iyi bir tanesidir. Eğer kısa operasyonlarla birçok sebebi ise, hiçbir şey ortaya çıkacak.

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
/

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Joanna Okrajni

    Joanna Okraj

    4 EYLÜL 2010
  • Kim Barbin

    Kim Barbin

    3 Mayıs 2012
  • RaquelGamesBR

    RaquelGamesB

    20 HAZİRAN 2009