Sviluppo > Strumenti > Verifiche > Processi database > Processi Sql Server 

Questa funzione permette di visualizzare i vari processi e i vari blocchi in corso sul database quando viene utilizzato il database SQL Server™.

Osservazione importante

Attenzionw, questo tipo di funzionefacilita, via un'interfaccia utente omogenea con il software, il lancio di procedure di gestione riservate ad un DB administrator. E' concepita per essere lanciata da un tale amministratore (chiamato abitualmente DBA).

Per essere utilizzata con profitto, presuppone una conoscenza preliminare del funzionamento dei database e della loro ottimizzazione.

Al contrario, un utilizzo inappropriato della funzione può comportare seri problemi di prestazioni e mettere in pericolo la sicurezza dell'utilizzo del software.

Prerequisiti

SEEREFERTTO Riferirsi alla documentazione di Implementazione

Gestione videata

Questa funzione permette di visualizzare i processi e i lock corrispondenti a tali processi sul database.
Questi elementi sono presentati sui due folder: il primo fornisce l'elenco dei processi, il secondo fornisce l'elenco dei lock.

La funzione permette di identificare i casi di lock bloccanti. Dopo la verifica dei processi bloccanti e bloccati, sarà possibile arrestare il processo bloccante.

Testata

Presentazione

Permette di conoscere le caratteristiche del database utilizzato.

Chiudi

 

Campi

I seguenti campi sono presenti in questo folder :

  • Database (campo BDDNAM)

Nome del database

  • Versione (campo VER)

Numero di versione del database

  • campo VERDES

Descrizione della versione del database

Chiudi

 

Folder Processo

Presentazione

Quando si entra in questa funzione, vengono visualizzati di default i processi connessi sul dossier corrente.

Se si desidera visualizzare i processi di tutti i dossier della soluzione, occorre modificare il Filtro dei processi.
Se si desidera modificare l'ordinamento per la visualizzazione dei processi, occorre modificare le opzioni Ordina processi e Senso.
Occorrerà in seguito attualizzare la visualizzazione con il bottone di fondo videata.

Questa videata è costituita da due blocchi.

Processi

Questo primo blocco contiene un riquadro che presenta i processi in corso sul database.

Opzioni di visualizzazione

Questo blocco permette di modificare le opzioni di filtro e di ordinamento dei processi.
Il filtro permette di limitare la visualizzazione dei processi e di conseguenza dei blocchi.
Occorrerà attualizzare la visualizzazione con il bottone di fondo videata per la presa in carico delle nuove opzioni di visualizzazione.

Chiudi

 

Campi

I seguenti campi sono presenti in questo folder :

Riquadro

  • ID del processo (campo SPID)

Nome del processo nel database

  • Utente di connessione (campo LOGNAM)

Nome dell'utente database

  • Database (campo DBNAM)

Nome del database

  • Data connessione (campo LOGDAT)

Data di connessione

  • campo LOGHOU

Ora di connessione

  • Stato (campo STA)

Stato della connessione

  • Applicazione (campo APP)

Programma in corso di esecuzione.

  • Ordine (campo CMD)

Ordine attualmente eseguito

  • Ultima esec. (campo LASDAT)

Data dell'ultima esecuzione di un'istruzione SQL sulla connessione

  • campo LASHOU

Ora dell'ultima esecuzione di un'istruzione SQL sulla connessione

  • Macchina host (campo MAC)

Nome del computer o della macchina (definito dal sistema operativo) dal quale l'utente è connesso.

  • Processi host (campo OSPRO)

Identificativo del processo sulla macchina (definito dal sistema operativo).

  • CPU (campo CPU)

Tempo UC totale per l'esecuzione del processo

  • Memoria (campo MEMUSE)

Numero di pagine della cache di procedure attualmente allocate al processo. Un numero negativo indica che il processo libera della memoria allocata da un altro processo.

  • Phys IO (campo PHYIO)

Numero totale di operazioni di scrittura e di lettura sul disco per il processo

  • ID del processo bloccante (campo BLOCKID)

Identificativo del processo bloccante.

Blocco numero 2

  • Filtro processi (campo FLT)

Permette di restringere o no l'elenco dei processi.

E' possibile visualizzare

  • I processi che vertono sul dossier corrente (di default)
  • Tutti i processi del database (tutti i dossier)
  • campo FILLER0

 

  • Ordinamento processi (campo TRI)

Permette di ordinare l'elenco dei processi. Si potrà anche precisare il senso dell'ordinamento.

  • Senso (campo TYPTRI)

 

Chiudi

 

Funzioni accessibili tramite click destro sul riquadro

Dettaglio

Campi

I seguenti campi sono presenti su questa finestra :

Blocco numero 1

  • ID del processo (campo SPID)

Nome del processo nel database

  • Database (campo DBNAM)

Nome del database

  • Utente di connessione (campo LOGNAM)

Nome dell'utente database

  • Ultima esec. (campo LASDAT)

Data dell'ultima esecuzione di un'istruzione SQL sulla connessione

  • campo LASHOU

Ora dell'ultima esecuzione di un'istruzione SQL sulla connessione

  • Macchina host (campo MAC)

Nome del computer o della macchina (definito dal sistema operativo) dal quale l'utente è connesso.

Ultima istruzione SQL

  • campo SQLTXT

Testo dell'ultima istruzione SQL eseguita sulla connessione

Chiudi

Permette di visualizzare il testo dell'ultima istruzione SQL del processo.

Arresta processo

Permette di terminare immediatamente il processo selezionato.

Può effettuare questa azione solo un utente appartenente al ruolo sysadmino processadmin. Occorrerà quindi fornire il nome di un utente avente diritti sufficienti nonché la sua password.

 

Chiudi

 

Folder Blocchi

Presentazione

Sul secondo folder, appare l'elenco dei lock attivi ed in attesa sul database corrispondenti ai processi del primo folder.

Ciò permette, nei casi di lock bloccanti, di distinguere:

  • quale processo è bloccante
  • quale processo è bloccato e qual è il processo che lo blocca

Chiudi

 

Campi

I seguenti campi sono presenti in questo folder :

Riquadro

  • ID del processo (campo SPID)

Nome del processo nel database

  • Database (campo DBNAM)

Nome del database

  • Utente (campo LOGNAM)

Nome dell'utente database

  • Macchina host (campo MAC)

Nome del computer o della macchina (definito dal sistema operativo) dal quale l'utente è connesso.

  • Proprietario (campo OBJOWN)

Proprietario dell'oggetto in corso di blocco.

  • Oggetto (campo OBJNAM)

Nome dell'oggetto o della transazione in corso di blocco.

  • Indice (campo INDNAM)

Nome dell'indice in corso di lock.

  • Tipo (campo TYPLCK)

Tipo di risorsa bloccata.

Valori possibili:

 1. NUL = Risorsa NULL (inutilizzata).
 2. DB  = Database.
 3. FIL = File.
 4. IDX = Indice/Oggetto.
 5. TAB = Tabella.
 6. PAG = Pagina.
 7. KEY = Chiave.
 8. EXT = Estensione.
 9. RID = RID (ID di riga).
10. APP = Applicazione.
11. MD  = METADATA.
12. HBT = HOBT.
13. AU  = ALLOCATION_UNIT.

  • Risorsa (campo RES)

Descrizione testuale di una risorsa di lock

  • Modalità (campo MODE)

Modalità di richiesta di blocco. Questa colonna corrisponde alla modalità di blocco del richiedente e rappresenta la modalità accordata, la modalità conversione o la modalità attesa.

Valori possibili:

0 = NULLO. Nessun accesso è accordato alla risorsa. Serve come spazio riservato.
1 = Sch-S (Stabilità dello schema). Garantisce che l'elemento di uno schema, come quello di una tabella o di un indice, non venga eliminato finché una sessione contiene un blocco di stabilità dello schema sull'elemento dello schema.
2 = Sch-M (Modifica dello schema). Deve essere contenuto in ogni sessione destinata a modificare lo schema della risorsa specificata. Garantisce che nessun'altra sessione faccia riferimento all'oggetto indicato.
3 = S (Condiviso). La sessione che mantiene il lock può disporre di un accesso condiviso alla risorsa.
4 = U (Aggiornamento). Indica che è stato posto un blocco di aggiornamento su risorse che possono finalmente essere aggiornate. Utilizzato per evitare le forme correnti di blocchi che possono prodursi quando molteplici sessioni bloccano delle risorse in vista di un eventuale aggiornamento.
5 = X (Esclusivo). La sessione che mantiene il lock può disporre di un accesso esclusivo alla risorsa.
6 = IS (Intent condiviso). Indica l'intenzione di posizionare dei lock S su alcune risorse subordinate nella gerarchia di blocco.
7 = IU (Intent aggiornamento). Indica l'intenzione di posizionare dei lock U su alcune risorse subordinate nella gerarchia di blocco.
8 = IX (Intent esclusivo). Indica l'intenzione di posizionare dei lock X su alcune risorse subordinate nella gerarchia di blocco.
9 = SIU (Aggiornamento dei lock Intent condivisi). Segnala degli accessi condivisi ad una risorsa con lo scopo di posizionare dei blocchi di aggiornamento sulle risorse subordinate nella gerarchia di blocco.
10 = SIX (Intent condiviso esclusivo). Segnala degli accessi condivisi ad una risorsa con lo scopo di posizionare dei blocchi esclusivi9 sulle risorse subordinate nella gerarchia di blocco.
11 = SIX (Intent aggiornamento esclusivo). Segnala un lock di aggiornamento su una risorsa con lo scopo di posizionare dei lock esclusivi sulle risorse subordinate nella gerarchia di blocco.
12 = BU. Utilizzato dalle operazioni per blocco.
13 = RangeS_S (lock condiviso di chiave e lock condiviso di risorse). Indica un'analisi di tranche serializzabile.
14 = RangeS_U (lock condiviso di chiave e lock di aggiornamento di risorse). Indica un'analisi di aggiornamento serializzabile.
15 = RangeI_N (lock di estensione di inserimento di chiave e lock di risorsa NULL). Utilizzato per testare le estensioni prima dell'inserimento di una nuova chiave in un indice.
16 = RangeI_S. Lock di conversione di chiavi, creato da una superposizione dei lock RangeI_N et S.
17 = RangeI_U. Lock di conversione di chiavi, creato da una superposizione dei lock RangeI_N et U.
18 = RangeI_X. Lock di conversione di chiavi, creato da una superposizione dei lock RangeI_N e X.
19 = RangeX_S. Lock di conversione di chiavi, creato da una superposizione dei lock RangeI_N e RangeS_S.
20 = RangeX_U. Lock di conversione di chiavi, creato da una superposizione dei lock RangeI_N e RangeS_U.
21 = RangeX_X. Lock di conversione utilizzato durante l'aggiornamento di una chiave in una estensione.

  • Stato del blocco (campo LCKSTA)

Stato della richiesta di lock.

Valori possibili:

1 = Accordato
2 = In conversione
3 = In attesa

  • Attesa SPID (campo WAIT)

Identificativo del processo bloccante.

Chiudi

 

Funzioni accessibili tramite click destro sul riquadro

Dettaglio

Campi

I seguenti campi sono presenti su questa finestra :

Blocco numero 1

  • ID del processo (campo SPID)

Nome del processo nel database

  • Database (campo DBNAM)

Nome del database

  • Utente di connessione (campo LOGNAM)

Nome dell'utente database

  • Ultima esec. (campo LASDAT)

Data dell'ultima esecuzione di un'istruzione SQL sulla connessione

  • campo LASHOU

Ora dell'ultima esecuzione di un'istruzione SQL sulla connessione

  • Macchina host (campo MAC)

Nome del computer o della macchina (definito dal sistema operativo) dal quale l'utente è connesso.

Ultima istruzione SQL

  • campo SQLTXT

Testo dell'ultima istruzione SQL eseguita sulla connessione

Chiudi

Permette di visualizzare il testo dell'ultima istruzione SQL del processo.

 

Chiudi

 

Bottoni specifici

Questo bottone, accessibile anche con tasto funzionale , permette di effettuare il refresh dei folder.

Messaggi di errore

Oltre ai messaggi generici, i seguenti messaggi d'errore possono apparire al momento dell'inserimento :

"Verificare la parametrizzazione della soluzione dalla console (file solution.xml)."

Una informazione necessaria non ha potuto essere recuperata nel file solution.xml. La parametrizzazione della soluzione è incompleta e bisogna completarla tramite la console di configurazione

Tabelle utilizzate

SEEREFERTTO Riferirsi alla documentazione di Implementazione