Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Oracle SQL História

Vzhľadom k tomu , ukážky Oracle a zaznamenáva každý aktívny relácie beží na databáze , jednoduchý dotaz umožňuje získať históriu príkazov SQL v danom časovom rámci . Význam

Oracle automaticky vzorky každej sedenie beží na databáze každý druhý , a záznamy SQL histórie informácie vo v $ active_session_history zobrazenie dát slovníka . v $ active_session_history je kruhový buffer , takže keď sa zaplní , Oracle automaticky archivuje informácie od v. $ active_session_history na dba_hist_active_sess_history zobrazenie dát slovníka , pred prepísaním dáta v $ active_session_history pohľade .
Funkcie

dotazovanie tieto dva pohľady , históriu príkazov SQL zaplatených počas daného časového intervalu v databáze možno získať . Napríklad nasledujúci dotaz vypíše zoznam prvých 4000 znakov SQL príkazov vykonávaných medzi 9 hod a 09:05 na 30 septembra 2010 :

vyberte a.sql_id , dbms_lob.substr ( b sql_text , 4000,1 ) z dba_hist_active_sess_history sa , dba_hist_sqltext b

kde sample_time medzi TO_DATE ( '20100930 : 09:00 ' , ' RRRRMMDD : HH24 : mi ' )

a TO_DATE ( '20100930 : 09:01 ' , ' RRRRMMDD : HH24 : mi ' ) a b.sql_id = a.sql_id

únie všetky

vyberte a.sql_id , dbms_lob.substr ( b.sql_text , 4000 1 ) od v. $ active_session_history a , v $ sqlarea b

kde sample_time medzi TO_DATE ( '20100930 : 09:00 ' , ' RRRRMMDD : HH24 : mi ' ) a

TO_DATE ( " 20100930:09:01 ' , ' RRRRMMDD : HH24 : mi ' ) a b.sql_id = a.sql_id
Úvahy

Okrem toho , Oracle zhŕňa hodinové štatistiky vykonávanie príkazov SQL vo svojom Automatické Workload Repository . Dalo by sa zistiť čo najviac príkazov SQL náročné na prostriedky počas príslušného časového intervalu vzorkovania dba_hist_sqlstat údaje slovníka pohľad spolu s dba_hist_snapshot výhľadom na dátový slovník .
Účinky

napríklad nasledujúci dotaz vracia zoznam SQL príkazov vykonávaných medzi 9 hod a 10 hod spolu s ich procesorového času , ktorý uplynul čas , io_wait času a počtu diskreads . Výstup z tohto dotazu je zoradený podľa času CPU .

Vyberte od dba_hist_sqlstat a , b dba_hist_sqltext kde a.sql_id = b.sql_id a snap_id = ( select distinct snap_id z dba_hist_snapshot kde to_char ( begin_interval_time , " RRRRMMDD : HH24 : mi ' ) = '20100930 : 09:00 " a to_char ( end_interval_time , " RRRRMMDD : HH24 : mi ' ) = '20100930 : 10:00 ' ) zoradiť podľa cpu_time

/

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené