Query per vedere l’utilizzo di risorse delle SESSIONI ATTIVE

Pubblicato da Patrizia Gardis il

Con l’articolo Query per vedere l’utilizzo di risorse delle sessioni attive,
vediamo informazioni utili per individuare le sessioni
che stanno utilizzando
un eccessivo consumo di risorse.

Dalla query selezioniamo l’istanza di provenienza,
l’utente proprietario,
l’utente del sistema operativo,
la macchina e
il programma di provenienza.

Inoltre visualizziamo le informazioni relative ai consumi di risorse
della sessione attiva.

I campi selezionati sono:

INST_ID – Numero identificativo dell’istanza del RAC
SID – Numero identificativo della sessione
USERNAME – Nome utente con cui è stata eseguita la sessione
SQL_ID – Numero identificativo dello statement
PROGRAM – Software da cui proviene la sessione
MACHINE – Nome macchina da cui proviene la sessione
OSUSER – Nome dell’utente del sistema operativo
EXECUTIONS – Numero totale delle esecuzioni dello statement
BUFFER_GETS – Memoria di BUFFER CHACE utilizzata da ogni singola
DISK_READS – Letture disco eseguite da ogni singola esecuzione
ELAPSED_TIME – Tempo di esecuzione per ogni singola esecuzione

Inoltre recuperiamo le informazioni dalle tabelle
GV$SESSION e
GV$SQL.

Infine mettiamo il risultato in relazione dalle JOIN
a.INST_ID=b.INST_ID,
a.SQL_CHILD_NUMBER=b.CHILD_NUMBER
a.SQL_ID=b.SQL_ID

In aggiunta, i record sono filtrati per:
USERNAME diverso da SYS e
SESSIONI ATTIVE.

Query per vedere l’utilizzo di risorse delle SESSIONI ATTIVE:

col I for 9
col sid for 9999
col LAST_LOAD_TIME for a22
col buff_gets for 99999999999
col executions for 99999999999
col sql_text for a100 wrap
set long 10000
col osuser for a8
col machine for a10
col buff_get for 9999999999
col Secs for 999,99
col username for a16
col program for a34
col sql_child for 9999
col disk for 9999999
col cpu for 99999999
col cld for 999
col cpu for 99999999
set linesize 400
select a.inst_id as I, a.sid, a.username , a.sql_id, a.program ,machine , osuser, executions, BUFFER_GETS/(executions+1) as buff_get,DISK_READS/(executions+1) as disk , ((ELAPSED_TIME)*power(10,-6))/(Executions+1) as Secs
  from gv$session a , gv$sql b
 where a.inst_id=b.inst_id and 
       a.sql_child_number=b.child_number and
       a.sql_id=b.sql_id and status='ACTIVE' and
       service_name not like 'SYS%' and
       username not like 'SYS%' 
order by 3,4 ;

Query utilizzo risorse SESSIONI ATTIVE
Profile side view portrait of his he nice attractive skilled focused serious, guy writing script ai tech support devops creating digital solution front-end in dark room workplace station indoors

Stay tuned! Non solo Query per vedere utilizzo risorse SESSIONI ATTIVE

Per visionare le mie guide sui Comandi CRS clicca qui!
A questo LINK, invece, troverai le query SQL

Resta aggiornato sulle nostre attività entrando a far parte della nostra community:
Facebook
Youtube
Linkedin

Per chi ancora non lo avesse fatto, consigliamo di salvare tra i propri bookmark questo sito, così da avere sempre a portata di mano le nsotre soluzioni ai problemi più comuni su database, in particolar modo, database oracle.


0 commenti

Lascia un commento

Segnaposto per l'avatar