DetailPage-MSS-KB

Microsoft Knowledge Base

Identificativo articolo: 319942 - Ultima modifica: venerdì 4 dicembre 2009 - Revisione: 6.0

 

In questa pagina

Sommario

Questo articolo vengono descritte le seguenti impostazioni di configurazione e considerazioni per il loro utilizzo:
  • Maschera di affinità
  • Lightweight pooling
  • Max Async IO
  • Max worker threads
  • Memoria
  • Incremento di priorità
  • Impostare dimensioni working set
SQL Server può ottenere un livello molto elevato di prestazioni con relativamente interventi di configurazione ottimizzazione. È possibile ottenere livelli elevati di prestazioni utilizzando una buona applicazione e Progettazione database e non tramite configurazione estesa di ottimizzazione. Vedere la sezione "Riferimenti" di questo articolo per informazioni su come risolvere i problemi relativi a vari problemi di prestazioni di SQL Server.

Quando si indirizza un problema di prestazioni, il grado di miglioramento che è disponibile dalla configurazione di ottimizzazione è in genere modesto, a meno che non si dispone attualmente di sistema configurato correttamente. In SQL Server versione 7.0 e versioni successive, SQL Server utilizza la configurazione automatica di ottimizzazione ed è estremamente raro che le impostazioni di configurazione (specialmente le impostazioni avanzate) necessario eventuali modifiche. In genere, non si effettua una configurazione di SQL Server modificare senza motivo enorme e non senza metodico test accurati per verificare la necessità per la modifica di configurazione. È necessario stabilire una linea di base prima di modificare la configurazione in modo che è possibile misurare il vantaggio dopo la modifica.

Se non si dispone di SQL Server è configurato correttamente, alcune impostazioni potrebbero de-stabilize il server o potrebbero rendere SQL Server hanno un comportamento non funziona correttamente. Anni di esperienza di supporto con molti ambienti diversi indicano che le impostazioni di configurazione non predefinita potrebbero avere risultati tale intervallo è compreso tra non associata ad alcun paese e altamente negativo.

Se si effettua una configurazione di modifica, è necessario eseguire prestazioni metodico rigorose test prima e dopo la modifica al fine di valutare il grado di miglioramento.

In base a diversi scenari di supporto effettivi, SQL Server versione 7.0 e versioni successive consente di ottenere un livello di prestazioni estremamente elevato senza alcuna configurazione manuale di ottimizzazione.

In SQL Server versione 7.0 e versioni successive, non apportare modifiche alla configurazione per le connessioni utente, blocchi e aprire gli oggetti perché Ottimizza saranno molto in base all'impostazione predefinita, SQL Server in modo dinamico limitati queste impostazioni.

Maschera di affinità

L'impostazione di affinity mask fa riferimento a come saldamente un thread è associato a una particolare CPU. Per impostazione predefinita, Microsoft Windows NT e Microsoft Windows 2000, utilizzare l'affinità "soft" che tenta di Riprogramma un thread sulla CPU in cui esso ultima esecuzione. Tuttavia, se non è possibile, un thread potrebbe essere eseguito su una diversa CPU.

In pratica, se si modifica l'impostazione di affinity mask rispetto all'impostazione predefinita è solo raramente aiuta le prestazioni e frequente peggioreranno delle prestazioni.

Affinity mask consente di limitare SQL Server a un sottoinsieme di CPU disponibili e consente ad altri concorrenti servizi migliori di CPU accedere. Nella maggior parte dei casi, non è necessario questo perché SQL Server viene eseguito con priorità normale. L'utilità di pianificazione di thread di Windows NT o Windows 2000 modifica dinamicamente le priorità dei thread di tutti i thread concorrenti per assicurarsi che abbiano una notevole possibilità CPU affatto disponibili.

Non regolare affinity mask, ad eccezione in condizioni molto insolite. Se si sceglie di modificare affinity mask, eseguire metodico test rigorosi prima e dopo la modifica per verificare la necessità di e in grado di miglioramento.

Lightweight pooling

Per impostazione predefinita, SQL Server utilizza un thread per ogni SPID attivo o processo utente. Tali thread lavorano in una configurazione comune al fine di mantenere gestibile il numero dei thread. La configurazione avanzata opzione "lightweight pooling" (che viene talvolta definito come "Modalità fiber") utilizza il supporto "Fiber" di Windows NT essenzialmente gestire diversi contesti di esecuzione con un singolo thread.

Basate sull'esperienza di produzione effettivo, non è necessario utilizzare fiber modalità tranne in casi molto rari. Lightweight pooling è potenzialmente anche utile solo se vengono soddisfatte tutte le condizioni seguenti. È necessario determinare se è effettivamente utile tramite test accurati controllato.
  • Server multiprocessore di grandi dimensioni sono in uso.
  • Tutti i server eseguono uguale o vicino a capacità massima.
  • Una grande quantità di variazioni di contesto si verifica (superiore a 20.000 al secondo).
Per eseguire la ricerca di commutazione di contesto, utilizzare Performance Monitor, selezionare i thread del contatore, selezionare l'oggetto parametri di contesto/sec ", quindi selezionare per acquisire tutte le istanze di SQL Server. Se si esegue il server in modalità fiber, SQL Mail in SQL Server 2000 o in SQL Server 2005 non è supportata. SQL Mail non è supportato in SQL Server 2000 a 64 bit. Per ulteriori informazioni, vedere l'argomento "Differenze tra versioni a 64 bit e a 32 bit" nella documentazione in linea di SQL Server 2000 (64-bit Edition). Per ulteriori informazioni, fare clic sui numeri degli articoli della Microsoft Knowledge Base riportato di seguito:
308604  (http://support.microsoft.com/kb/308604/ ) PRB: SQLMail non è supportato quando si esegue il server in modalità fiber
303120  (http://support.microsoft.com/kb/303120/ ) FIX: Errore ConnectionWrite quando si utilizza lightweight pooling

Max Async IO

SQL Server 7.0: l'impostazione di configurazione max async IO è disponibile in SQL Server 7.0. Può essere opportuno modificare questa impostazione se si dispone di un sistema RAID veloce e un modo per misurare l'agevolazione. Modificare questa impostazione a meno che non si dispone di una previsione in base ai quali valutare il risultato. Monitorare l'attività del disco e cercare eventuali problemi di accodamento del disco. Per ulteriori informazioni, vedere la seguente documentazione in linea di SQL Server gli argomenti:
  • "max async IO Option"
  • "Monitoraggio dell'attività del disco"
  • "Identificazione dei colli di bottiglia"
SQL Server 2000 e versioni successive: in SQL Server 2000 e versioni successive, non è possibile modificare l'impostazione di configurazione max async IO. SQL Server 2000 e versioni successive ottimizza automaticamente saranno molto limitati questa impostazione.

Max worker threads

Per impostazione predefinita, l'impostazione di max worker threads è 255 in SQL Server 2000. Di conseguenza, è possibile creare thread fino a 255 lavoro. Nella maggior parte dei casi, utilizzare l'impostazione predefinita di 255. Ciò non significa che sia possibile stabilire solo 255 connessioni utente. Un sistema può disporre di migliaia di connessioni utente (che sono essenzialmente multiplexed verso il basso per 255 thread di lavoro) e in generale, gli utenti non in genere percepire eventuali ritardi. In tal caso, solo 255 query possano essere eseguite simultaneamente, ma ciò multiplexed verso il basso per il numero di CPU disponibili, in modo che la natura concorrente solo viene percepita, indipendentemente dal numero di thread di lavoro configurato.

Nota Per impostazione predefinita, l'impostazione di max worker threads è 0 in SQL Server 2005 e in SQL Server 2008.

Se si configura un numero di thread di lavoro su un valore che sarà maggiore rispetto all'impostazione predefinita, è quasi sempre controproducente e rallenta le prestazioni a causa dell'overhead di programmazione e risorsa. Solo aumentare questa impostazione in circostanze molto raro e quando test rigorosi metodico dimostra che è utile effettuare questa operazione.

Memoria


Per informazioni sulla configurazione di memoria, vedere l'argomento "Optimizing Server Performance utilizzo memoria opzioni di configurazione" nella documentazione in linea.

Per ulteriori informazioni sulla configurazione di memoria per SQL Server in cluster vedere "Considerazioni sull'utilizzo" nell'argomento in linea della documentazione di SQL Server, "Creazione di un cluster di failover".

Per ulteriori informazioni, fare clic sui numeri degli articoli della Microsoft Knowledge Base riportato di seguito:
274750  (http://support.microsoft.com/kb/274750/ ) Come configurare la memoria per più di 2 GB in SQL Server
224818  (http://support.microsoft.com/kb/224818/ ) Regolazione della memoria semplice è obbligatorio se SQL Server 7.0 ed Exchange 5.5 Service Pack 2 sono installati su BackOffice Small Business Server 4.5
316749  (http://support.microsoft.com/kb/316749/ ) PRB: There potrebbe non essere sufficiente memoria virtuale con un numero elevato di database

Incremento di priorità

Per impostazione predefinita, l'impostazione di priority boost è 0, che fa sì che SQL Server per l'esecuzione con priorità normale se si esegue SQL Server in un computer monoprocessore o su un computer (SMP) a più processori simmetrico. Se si imposta priority boost su 1, il processo di SQL Server viene eseguito con priorità alta. Questa impostazione non rende il processo di SQL Server esecuzione con la priorità più alta del sistema operativo.

Basate sull'esperienza di supporto effettivi, non è necessario utilizzare priority boost per avere buone prestazioni. Se si utilizza priority boost, possono interferire con i server smussate funziona in alcune condizioni e si consiglia di non utilizzare, tranne che in circostanze molto insolite. Servizio supporto tecnico clienti Microsoft, ad esempio, potrebbe utilizzare priority boost quando si analizza un problema di prestazioni.

Importante Non utilizzare priority boost per i cluster che eseguono SQL Server 7.0 e versioni successive.

Impostare dimensioni working set

Non modificare set working set size rispetto all'impostazione predefinita. Con il valore predefinito 0, virtual memory manager di Windows NT o Windows 2000 può determinare la dimensione del working set di SQL Server. Quando si installa SQL Server, l'installazione automaticamente indica a Windows NT o Windows 2000 per ottimizzare le prestazioni delle applicazioni di rete. Virtual memory manager di Windows NT o Windows 2000 non eseguirà pertanto molto poco working set rifilatura, che solo come minimo interferisce con il working set di istanze di SQL Server.

La modifica di questa impostazione non fornisce alcun vantaggio a livello di prestazioni. In base ai casi di supporto effettivi, la modifica di questa impostazione in genere fa sì che più buona danni.

Se si modifica, impostare le dimensioni del set di lavoro, può anche essere una causa di messaggi di errore di SQL Server 844 o 845. Vedere la sezione "Riferimenti" in questo articolo per ulteriori informazioni sulle cause comuni dei messaggi di errore 844 e 845.

Riferimenti

Per ulteriori informazioni, fare clic sui numeri degli articoli della Microsoft Knowledge Base riportato di seguito:
310834  (http://support.microsoft.com/kb/310834/ ) PRB: Common cause del messaggio di errore 844 o messaggio di errore 845 (errori di timeout del latch di buffer)
298475  (http://support.microsoft.com/kb/298475/ ) Risoluzione dei problemi di prestazioni dell'applicazione
243589  (http://support.microsoft.com/kb/243589/ ) Come risolvere i problemi relativi a query con esecuzione lenta su SQL Server 7.0 o versione successiva
243588  (http://support.microsoft.com/kb/243588/ ) Come risolvere i problemi delle prestazioni delle query ad hoc
224587  (http://support.microsoft.com/kb/224587/ ) Come risolvere i problemi di prestazioni dell'applicazione con SQL Server
166967  (http://support.microsoft.com/kb/166967/ ) Impostazioni di configurazione appropriate di SQL Server 6.5
254321  (http://support.microsoft.com/kb/254321/ ) Operazioni consigliate/sconsigliate e avvisi di base relativi al server SQL a cluster
297864  (http://support.microsoft.com/kb/297864/ ) Considerazioni sulle prestazioni per un aggiornamento da SQL Server 6.5

Le informazioni in questo articolo si applicano a:
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2000 64-bit Edition
  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Personal Edition
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 Workgroup Edition
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 Express with Advanced Services
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Web
  • Microsoft SQL Server 2008 Workgroup
Chiavi: 
kbmt kbhowtomaster KB319942 KbMtit
Traduzione automatica articoliTraduzione 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: 319942  (http://support.microsoft.com/kb/319942/en-us/ )
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.
Condividi
Altre opzioni per il supporto
Forum del supporto di Microsoft Community
Contattaci direttamente
Ricerca di un partner certificato Microsoft
Microsoft Store