Descrizione delle colonne waittype e lastwaittype nella tabella master.dbo.sysprocesses in SQL Server 2000 e SQL Server 2005

Traduzione articoli Traduzione articoli
Identificativo articolo: 822101 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

La tabella master.dbo.sysprocesses Microsoft SQL Server 2000 e SQL Server 2005 Ŕ una tabella di sistema che contiene informazioni sul processo ASP ID (SPID) che eseguono SQL Server.

Se si utilizza SQL Server 2005, Ŕ possibile accedere anche in questa tabella utilizzando la visualizzazione di compatibilitÓ sys.sysprocesses .

La colonna waittype , la colonna lastwaittype , la colonna waittime e la colonna waitresource nella tabella di sistema master.dbo.sysprocesses fornite informazioni sulle risorse che i processi in attesa.

In questo articolo sono elencati i valori possibili lastwaittype, i valori associati waittype e una breve descrizione del loro significato.

Informazioni

La tabella di sistema di master.dbo.sysprocesses Ŕ memorizzata nel database master dell'istanza di SQL Server contiene le colonne seguenti che consentono di monitorare i processi per scenari di contesa di risorse e i problemi di blocco l'amministratore di sistema:
  • waittype : il campo di waittype Ŕ una colonna binaria interna riservata. Il valore nel campo waittype indica il tipo di risorsa che la connessione Ŕ in attesa.
  • lastwaittype : il campo lastwaittype Ŕ una rappresentazione di stringa del campo waittype . Il campo lastwaittype indica il waittype l'ultimo o il waittype corrente di uno SPID. Se il valore della colonna waittype per un SPID Ŕ 0 x 0000, lo SPID non attualmente in attesa su qualsiasi risorsa. In questo caso, la colonna di lastwaittype indica l'ultima waittype che lo SPID Ŕ stato rilevato. Tuttavia, se il valore della colonna waittype per un SPID Ŕ diverso da zero, i valori nella colonna lastwaittype e la colonna waittype dello SPID sono uguali. Questi valori indicano lo stato di attesa corrente per lo SPID.

    Nota Il waittype UMSTHREAD Ŕ un'eccezione a questa regola. Vedere la descrizione di UMSTHREAD nella sezione "Altri waittypes" per ulteriori informazioni.
  • waittime : la colonna waittime fornisce il numero di millisecondi che lo SPID Ŕ stato in attesa con il waittype corrente.
  • waitresource : la colonna waitresource fornisce ulteriori informazioni sulla risorsa specifica che lo SPID Ŕ in attesa.
Le sezioni successive di questo articolo descrivono alcune del waittypes supportati da SQL Server e che spesso vengono registrati nella tabella di sistema master.dbo.sysprocesses .

BLOCCO waittypes

Nella tabella seguente sono elencati il waittypes blocco nella tabella di sistema master.dbo.sysprocesses in SQL Server 2000 e SQL Server 2005.
Riduci questa tabellaEspandi questa tabella
LastwaittypeWaittypeDescrizione
LCK_M_SCH_S0 x 01StabilitÓ dello schema
LCK_M_SCH_M0 x 02Modifica dello schema
LCK_M_S0 x 03Condivisione
LCK_M_U0 x 04Aggiornamento
LCK_M_X0 x 05Esclusivo
LCK_M_IS0 x 06Condivisione di scopo
LCK_M_IU0 x 07Tipo di aggiornamento
LCK_M_IX0 x 08Esclusivo di scopo
LCK_M_SIU0 x 09Condivisa intento di aggiornamento
LCK_M_SIX0x0ACondivisione-tipo-esclusivo
LCK_M_UIX0x0BTipo di aggiornamento-esclusivo
LCK_M_BU0x0CAggiornamento di massa
LCK_M_RS_S0x0DCondivisione di condivisione di intervallo
LCK_M_RS_U0x0EAggiornamento di condivisione di intervallo
LCK_M_RI_NL0x0FIntervallo-Inserisci NULL
LCK_M_RI_S0 x 10Intervallo Inserisci condivise
LCK_M_RI_U0 x 11Inserisci intervallo-Aggiorna
LCK_M_RI_X0 x 12Intervallo-Inserisci esclusivo
LCK_M_RX_S0 x 13Intervallo esclusivo condiviso
LCK_M_RX_U0 x 14Intervallo esclusivo-aggiornamento
LCK_M_RX_X0x15Intervallo esclusivo-esclusivo
Per ulteriori informazioni sui tipi di blocco che sono supportate in SQL Server 2000 e SQL Server 2005, vedere i seguenti argomenti nella documentazione in linea di SQL Server:
  • Informazioni sui blocchi in SQL Server
  • Bloccare la compatibilitÓ
Inoltre, se un SPID Ŕ in attesa waittypes il blocco e il valore corrispondente nella colonna waittime registrato nella tabella di sistema master.dbo.sysprocesses Ŕ molto elevato, Ŕ necessario risolvere i problemi di blocchi per l'istanza di SQL Server.

Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
224453Comprensione e la risoluzione di SQL Server 7.0 o 2000 problemi di blocco

LATCH waittypes

Un latch Ŕ un oggetto di sincronizzazione leggero a breve termine. Nell'elenco riportato di seguito vengono descritti i diversi tipi di latch:
  • latch di buffer non (non-BUF) : il latch di buffer non forniscono servizi di sincronizzazione delle strutture di dati in memoria o fornire protezione re-entrancy per righe di codice sensibili alla concorrenza. ╚ possibile utilizzare questi latch per numerose operazioni, ma non vengono utilizzate per sincronizzare l'accesso alle pagine di buffer.
  • latch di buffer (BUF) : il latch di buffer consentono di sincronizzare l'accesso a BUF strutture e le pagine di database associato. Il buffer tipica a scatto si verifica durante le operazioni che richiedono la serializzazione in una pagina di buffer (durante la divisione di pagina o durante l'allocazione di una nuova pagina, ad esempio). Questi latch non vengano mantenute per tutta la durata di una transazione. Questi sono indicati nella tabella master.dbo.sysprocesses dal waittypes PAGELATCH.

    Per ulteriori informazioni su uno dei possibili cause di contesa di latch BUF, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
    328551FIX: Concorrenza miglioramenti per il database tempdb
  • latch di I/O : latch di I/O sono un sottoinsieme di latch BUF che vengono utilizzati quando il buffer e la pagina di dati associato o la pagina di indice Ŕ all'interno di un I/O operazione. PAGEIOLATCH waittypes vengono utilizzati per i trasferimenti disco alla memoria e un significativo waittime per questi waittypes suggerisce i problemi di sottosistema di I/O di disco.
Nella tabella seguente sono elencati il waittypes latch diversi che Ŕ possibile notare nella tabella di sistema master.dbo.sysprocesses in SQL Server 2000 e SQL Server 2005.
Riduci questa tabellaEspandi questa tabella
LastwaittypeWaittypeDescrizione
LATCH_NL0 x 400Latch null
LATCH_KP0x401Mantenere latch
LATCH_SH0x402Latch condivisa
LATCH_UP0x403Latch di aggiornamento
LATCH_EX0x404Latch esclusivo
LATCH_DT0x405Eliminare il latch
PAGELATCH_NL0x410Latch pagine di buffer null
PAGELATCH_KP0x411Mantenere latch di buffer di pagina
PAGELATCH_SH0x412Condivisa latch di buffer di pagina
PAGELATCH_UP0x413Latch pagine di buffer di aggiornamento
PAGELATCH_EX0x414Latch di pagina esclusivo buffer
PAGELATCH_DT0x415Eliminazione di latch di buffer di pagina
PAGEIOLATCH_NL0x420Latch di I/O di pagina di buffer null
PAGEIOLATCH_KP0x421Mantenere latch di buffer di I/O di pagina
PAGEIOLATCH_SH0x422Condivisa latch di buffer di I/O di pagina
PAGEIOLATCH_UP0x423Aggiornamento di latch di buffer di I/O di pagina
PAGEIOLATCH_EX0x424Latch di I/O di pagina esclusivo buffer
PAGEIOLATCH_DT0x425Eliminazione di latch di buffer di I/O di pagina


Iniziando con SQL Server 2000 SP4, la colonna waitresource latch di buffer di non pi¨ comuni, il Latch_XX latch, viene popolato utilizzando i valori nella tabella seguente. Prima di SQL Server 2000 SP4, si Ŕ verificato alcun modo per determinare il motivo che il latch di buffer di non sono stati mantenuti senza ulteriori diagnostica invasiva, ad esempio un userdump. Il waittype il waitresource deve essere visualizzare o utilizzando il waittime. Il waittime specifica in millisecondi, quanto tempo il thread Ŕ stato in attesa.
Riduci questa tabellaEspandi questa tabella
waitresource Descrizione risoluzione dei problemi
FCB FGCB_ALLOCQuesti latch Latch_XX vengono mantenuti quando le pagine sono allocate da un file, sia un extent uniforme o misto. Latch inoltre vengono mantenuti durante operazioni di allocazione, quali l'aumento delle dimensioni e compattazione di un file, ridenominazione o eliminazione di un file o l'aggiunta o rimozione di un file.Determinare se i file sono riduzione o aumento delle dimensioni. A partire da SQL Server 2000 SP4, l'opzione di aumento di dimensioni automatico viene registrato nel log degli errori se sono necessari pi¨ di 30 secondi. In teoria, l'opzione di aumento di dimensioni automatico deve essere utilizzata come una copia di backup, ed Ŕ necessario utilizzare prudente la pianificazione evitare la penalitÓ del runtime di aumento delle dimensioni del file della capacitÓ. ╚ inoltre possibile modificare il valore di aumento automatico delle dimensioni predefinite del 10 % su una dimensione fissa. Non Ŕ consigliabile utilizzare la compattazione automatica in produzione. I file in questo filegroup possono inoltre emissione molte richieste di allocazioni. ╚ possibile aggiungere pi¨ file di quel filegroup.
TRACCIA TRACE_CONTROLLER TRACE_IO_SYNC Questi latch Latch_XX vengono mantenuti per scopi di sincronizzazione nelle operazioni di traccia di profiler. Operazioni Sychronization includono avvio, arresto, impostando lo stato della traccia e sincronizzazione i lettori e writer. Consente di identificare eventuali tracce di profiler che eseguono. Provare a evitare l'esecuzione pi¨ di una traccia di profiler nello stesso momento. Quando viene avviata una traccia di profiler, la traccia viene registrata nel registro eventi dell'applicazione. Inoltre, Ŕ possibile utilizzare la seguente query in SQL Query Analyzer per visualizzare le tracce attive.
SELECT * FROM 
::fn_trace_getinfo(NULL)
PARALLEL_PAGE_SUPPLIERQuesti latch Latch_XX vengono utilizzati per la sincronizzazione il recupero di pagine per una query parallela. Questo tipo di latch indica che la query viene eseguito in parallelo e potrebbe essere normale.Ottimizzare la query se la colonna waittime un valore elevato e la query scadenti.
IDESIl waitresource latch IDES viene utilizzato quando la pagina PFS viene analizzata per individuare lo spazio libero e quando la pagina PFS viene aggiornata per riflettere le allocazioni e deallocations delle pagine. Questo tipo di latch viene utilizzato anche quando singole pagine sono allocate a un oggetto esistente.Stabilire se si dispone di un indice cluster per l'oggetto in questione.

Altri waittypes

Nella tabella seguente sono elencate le altre waittypes che Ŕ possibile notare nella tabella di sistema master.dbo.sysprocesses in SQL Server 2000 e SQL Server 2005.
Riduci questa tabellaEspandi questa tabella
LastwaittypeWaittypeDescrizione
SOSPENSIONE0 x 20Questo waittype indica che lo SPID Ŕ in attesa di un periodo di tempo specificato e che Ŕ uno stato comune per il thread in background che elaborano il lazywrites, i punti di arresto o gli eventi di traccia di profiler lato server.
IO_COMPLETION0 x 21Questo waittype indica che lo SPID Ŕ in attesa di richieste di I/O per il completamento. Quando si nota questo waittype per un SPID nella tabella di sistema sysprocesses , Ŕ necessario identificare i colli di bottiglia disco utilizzando i contatori di monitoraggio delle prestazioni, traccia di profiler, la funzione fn_virtualfilestats di sistema con valori di tabella e l'opzione di SHOWPLAN per analizzare i piani di query che corrispondono allo SPID. ╚ possibile ridurre questo waittype aggiungendo ulteriore larghezza di banda I/O o di bilanciamento del carico I/O in altre unitÓ. ╚ inoltre possibile ridurre I/O utilizzando indicizzazione, cercare i piani di query non valida e cercare di pressione della memoria.
ASYNC_IO_COMPLETION0 x 22Questo waittype indica che lo SPID Ŕ in attesa per le richieste I/O asincrone per il completamento. Analogamente a waittype IO_COMPLETION, questo waittype indica inoltre un I/O collo di bottiglia. Questo waittype per gli SPID potrebbe essere visualizzato durante le operazioni di i/o a esecuzione prolungata, ad esempio BACKUP, DATABASE CREATE, ALTER DATABASE o l'aumento automatico del database. Questo waittype pu˛ anche indicare colli di bottiglia dei dischi.
RESOURCE_SEMAPHORE0 x 40Questo waittype indica che lo SPID Ŕ in attesa su una risorsa. Gli SPID in questo caso, in genere attendere per acquisire la memoria per l'ordinamento e l'operazione di hashing durante l'esecuzione della query. Questo waittype pu˛ anche indicare che la memoria pressione esiste nella parte visibile del pool di buffer.
DTC0 x 41Questo waittype indica che lo SPID Ŕ in attesa su Microsoft Distributed Transaction Coordinator servizio (ms).
OLEDB0 x 42Questo waittype indica che un SPID ha eseguito una chiamata a un provider OLE DB di funzione e che Ŕ in attesa che la funzione restituisce i dati richiesti. Questo waittype pu˛ anche indicare che lo SPID Ŕ in attesa di chiamate di procedura remota o query del server collegato restituire i dati richiesti. Lo SPID potrebbe inoltre essere in attesa per BULK INSERT comandi o le query di ricerca completa per restituire i dati necessari.

Il waittype di OLE DB utilizzato per indicare pi¨ diversi attendere gli stati, tra cui: collegato server query, query di ricerca full-text, i comandi di BULK INSERT, le tracce di Profiler lato client, materializzazione di tabelle virtuali, come la tabella sysprocesses, agente di lettura log e DBCC CHECKDB.
RESOURCE_QUEUE0 x 44Si tratta di uno stato di ? inattivitÓ ? normale per il thread in background in SQL Server.
ASYNC_DISKPOOL_LOCK0x45╚ possibile notare questo waittype durante le operazioni di i/o di a esecuzione prolungata ad esempio creazione, espansione o l'eliminazione di un file di database.
UMSTHREAD0 x 46Questo waittype indica che un batch Ŕ stato ricevuto da un'applicazione client ma che non vi siano nessun thread di lavoro disponibili soddisfare la richiesta. Se viene visualizzato in modo coerente 0x0046 waittypes SPID pi¨, Ŕ un collo di bottiglia significativo altrove nel sistema che utilizza tutti i thread di lavoro disponibili. (Si noti che la colonna waittime Ŕ sempre 0 per il waittype UMSTHREAD e nella colonna di lastwaittype erroneamente Ŕ possibile che a visualizzato il nome di un waittype diverso anzichÚ UMSTHREAD."
WRITELOG0 x 81Questo waittype indica che lo SPID Ŕ in attesa di una richiesta di I/O del log delle transazioni di completamento. Questo waittype pu˛ anche indicare un collo di bottiglia disco possibili.
PSS_CHILD
SCAMBIO
CXPACKET
0x101
0 x 200
0x208
Questi waittypes si articola tutti in esecuzione parallela di query. Questi waittypes indicano che lo SPID Ŕ in attesa su un processo parallelo per completare o avviare.
PAGESUPP0x209Questo waittype registra il tempo di attesa che si verifica a causa della serializzazione richiesta nella loro distribuzione righe ai chiamanti di pi¨ di una scansione parallela.
CURSORE0x20CQuesto waittype indica che lo SPID fa parte di sincronizzazione dei thread mentre utilizza asincroni di cursori. Il sp_configure ? cursorthreshold ? impostazione di configurazione pu˛ determinare quando viene creato in modo asincrono un cursore.
DBTABLE0x202Questo waittype indica che un thread in attesa di eseguire un checkpoint e che un altro thread Ŕ l'arresto del database.
EC0x203Questo waittype indica che lo SPID Ŕ in attesa di accesso al contesto di esecuzione.
TEMPOBJ0x204Questo waittype indica che lo SPID Ŕ in attesa per eliminare un oggetto temporaneo Ŕ ancora in uso.
XACTLOCKINFO0x205Questo waittype indica che lo SPID Ŕ in attesa per eseguire la manutenzione nel relativo elenco di blocco.
LOGMGR0x206Questo waittype viene utilizzato quando lo SPID tenta di arrestare un database e attende le richieste di I/O del log transazione in sospeso completare.
CMEMTHREAD0x207Questo waittype indica che lo SPID Ŕ in attesa di accesso a un oggetto memoria thread-safe. La serializzazione assicura che gli utenti sono allocare o liberare la memoria dall'oggetto memoria, eventuali altri SPID sta tentando di eseguire la stessa attivitÓ Ŕ necessario attendere e il waittype CMEMTHREAD viene impostata quando gli SPID sono in attesa.

╚ possibile notare questo waittype in molti scenari. Tuttavia, questo waittype viene registrato pi¨ di frequente quando i piani di query ad hoc vengono viene inseriti rapidamente in una cache di routine da molte connessioni diverse per l'istanza di SQL Server. ╚ possibile risolvere il collo di bottiglia limitando i dati che devono essere inseriti o rimossa dalla cache delle procedure, ad esempio, in modo esplicito applicazione di parametri di query in modo che le query possono essere riutilizzate o utilizzando stored procedure dove appropriato.
ARRESTO DEL SISTEMA0x20AQuesto waittype indica che Ŕ stato emesso un comando SHUTDOWN per lo SPID e lo SPID Ŕ in attesa per le query attive per il completamento.
WAITFOR0x20BQuesto waittype indica che lo SPID Ŕ inattivo a causa di un WAITFOR DELAY Transact-SQL istruzione.
NETWORKIO0 x 800Questo waittype indica che lo SPID Ŕ in attesa per l'applicazione client recuperare i dati prima che lo SPID possa inviare ulteriori risultati all'applicazione client.

Riferimenti

Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
244455Definizione dei campi di waittype e lastwaittype di sysprocesses per SQL Server 7.0
Per ulteriori informazioni sulla tabella master.dbo.sysprocesses sistema in SQL Server 2000, visitare il sito di Web di Microsoft:
http://msdn2.microsoft.com/en-us/library/aa260456(SQL.80).aspx
Per ulteriori informazioni sui latch in SQL Server 2000, visitare il sito di Web di Microsoft:
http://msdn2.microsoft.com/en-us/library/aa224727(SQL.80).aspx

ProprietÓ

Identificativo articolo: 822101 - Ultima modifica: giovedý 17 maggio 2007 - Revisione: 8.4
Le informazioni in questo articolo si applicano a:
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Workgroup Edition
Chiavi:á
kbmt kbsystemdata kbfield kbdatabase kbinfo KB822101 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 822101
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com