Elencare le risorse bloccate in Oracle

Scopriamo chi tiene lockata una precisa tabella in Oracle, e da quale macchina la sta lockando

Quando si esegue un’operazione su una risorsa, come una insert nelle tabelle, questa risorsa (in questo caso la tabella) entra in uno stato di lock che serve per evitare che altri possano modificarla, fino a quando la nostra operazione non è terminata ed eseguiamo un commit finale.

Se una tabella è in locked, vuol dire che chi non la sta modificando non può neppure eseguire una query di lettura su di essa (che sia un utente o un processo automatico), che risulterà in esecuzione fino a che il lock della tabella non viene disabilitato, ad operazione finita. Se, quindi, eseguendo una query su una tabella, vediamo che la query non risponde, molto probabilmente significa che qualcuno ci sta scrivendo dentro, e per sapere chi è possiamo eseguire questa query.

La query ci comunica esattamente quale tabella (e in che owner/schema si trova) è occupata, da quale utente è occupata, e in quale macchina l’utente è loggato per eseguire l’operazione che la sta bloccando.

Ogni articolo è soggetto ad aggiornamenti, condividi se ti è piaciuto
Se i link risultano corrotti segnalacelo tra i commenti, li correggeremo.

Francesco

Fondatore e amministratore di Dummy-X dal 2007, condivido interessi, idee, progetti, e soluzioni informatiche. Non vendo prodotti, mi limito a descrivere tecnologie e a mettere a disposizione gli strumenti adatti per poter realizzare idee. Tutto ciò che scrivo è frutto della mia esperienza lavorativa e della mia voglia di imparare. Da sempre studio l'informatica in tutte le sue angolazioni (software, hardware, reti e sicurezza) e negli ultimi anni mi sono specializzato nello sviluppo di web applications. Sono sempre aperto a nuove sfide e alla ricerca e conoscenza delle nuove tecnologie.
 

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *