Condividi tramite


Opzioni di avvio del servizio del motore di database

Le opzioni di avvio consentono di designare determinati percorsi di file necessari in fase di avvio e di specificare alcune condizioni a livello di server. Per la maggior parte degli utenti non è necessario specificare opzioni di avvio a meno che non si debbano risolvere problemi del motore di database o si verifichi un problema insolito e si ricevano istruzioni dal servizio di supporto tecnico di SQL Server di usare l'opzione di avvio.

Avviso

L'uso improprio di opzioni di avvio può influire sulle prestazioni del server e impedire l'esecuzione di SQL Server.

Informazioni sulle opzioni di avvio

Quando si installa SQL Server, il programma di installazione scrive un set di opzioni di avvio predefinite nel Registro di sistema di Microsoft Windows. Tali opzioni consentono di specificare un file del database master, un file di log del database master o un file di log degli errori alternativo. Se il motore di database non può individuare i file necessari, SQL Server non viene avviato.

Le opzioni di avvio possono essere impostate usando Gestione configurazione SQL Server. Per altre informazioni, vedere Configurazione delle opzioni di avvio del server (Gestione configurazione SQL Server).

Elenco delle opzioni di avvio

Opzioni di avvio predefinite Descrizione
-d percorso_file_master Percorso completo del file del database master (in genere, C:\Programmi\Microsoft SQL Server\MSSQL.n\MSSQL\Data\master.mdf). Se non si imposta questa opzione, vengono utilizzati i parametri esistenti nel Registro di sistema.
-e percorso_log_errori Percorso completo del file di log degli errori, in genere C:\Programmi\Microsoft SQL Server\MSSQL.n\MSSQL\LOG\ERRORLOG). Se non si imposta questa opzione, vengono utilizzati i parametri esistenti nel Registro di sistema.
-l percorso_log_master Percorso completo del file di log del database master (in genere C:\Programmi\Microsoft SQL Server\MSSQL.n\MSSQL\Data\mastlog.ldf). Se non si specifica questa opzione, vengono utilizzati i parametri esistenti nel Registro di sistema.
Altre opzioni di avvio Descrizione
-c Riduce i tempi necessari per l'avvio quando si avvia SQL Server dal prompt dei comandi. Il motore di database di SQL Server viene in genere avviato come servizio chiamando Gestione controllo servizi. Considerato che il motore di database di SQL Server non viene avviato come servizio quando viene eseguito l'avvio dal prompt dei comandi, usare -c per ignorare questo passaggio.
-f Avvia un'istanza di SQL Server con la configurazione minima. È utile nel caso in cui l'impostazione di un valore di configurazione, ad esempio un'allocazione eccessiva di memoria, abbia impedito l'avvio del server. L'avvio di SQL Server in modalità di configurazione minima imposta SQL Server sulla modalità utente singolo. Per altre informazioni, vedere la descrizione di -m di seguito.
-g memory_to_reserve Specifica un numero intero di megabyte (MB) di memoria che SQL Server lascerà disponibile per le allocazioni di memoria all'interno del processo di SQL Server, ma all'esterno del pool di memoria di SQL Server. La memoria esterna al pool di memoria è l'area usata da SQL Server per il caricamento di elementi, ad esempio i file di routine estesa .dll, i provider OLE DB a cui fanno riferimento le query distribuite e gli oggetti di automazione a cui si fa riferimento nelle istruzioni Transact-SQL. Il valore predefinito è 256 MB.

L'utilizzo di questa opzione può contribuire a ottimizzare l'allocazione di memoria, ma soltanto se la memoria fisica supera il limite configurato impostato dal sistema operativo per la memoria virtuale disponibile alle applicazioni. L'uso di questa opzione potrebbe essere appropriato nelle configurazioni di memoria di grandi dimensioni in cui i requisiti di utilizzo della memoria di SQL Server sono atipici e lo spazio degli indirizzi virtuali del processo di SQL Server è completamente in uso. L'uso non corretto di questa opzione può causare condizioni in cui un'istanza di SQL Server potrebbe non essere avviata o potrebbe riscontrare errori di runtime.

Usare il valore predefinito per il parametro -g , a meno che non venga visualizzato uno degli avvisi seguenti nel log degli errori di SQL Server:

-"Byte allocati virtuali non riusciti: dimensioni> FAIL_VIRTUAL_RESERVE<"

-"Byte allocati virtuali non riusciti: dimensioni> FAIL_VIRTUAL_COMMIT<"

Questi messaggi potrebbero indicare che SQL Server sta tentando di liberare parti del pool di memoria di SQL Server per trovare spazio per gli elementi, ad esempio la stored procedure estesa .dll file o oggetti di automazione. In questo caso, è consigliabile aumentare la quantità di memoria riservata usando l'opzione -g .

L'utilizzo di un valore minore di quello predefinito aumenta la quantità di memoria disponibile per il pool di memoria gestito da Gestione memoria e dagli stack di thread di SQL Server, offrendo alcuni vantaggi in termini di prestazioni per carichi di lavoro a utilizzo elevato di memoria in sistemi che non utilizzano un gran numero di stored procedure estese, query distribuite o oggetti di automazione.
-m Avvia un'istanza di SQL Server in modalità utente singolo. Quando si avvia un'istanza di SQL Server in modalità utente singolo, la connessione è consentita a un solo utente e il processo CHECKPOINT non viene avviato. CHECKPOINT assicura la regolare scrittura delle transazioni completate dalla cache del disco al database. Questa opzione viene in genere utilizzata per la risoluzione di problemi che richiedono interventi nei database di sistema Abilita l'opzione sp_configure allow updates. Per impostazione predefinita, l'opzione allow updates è disabilitata. L'avvio di SQL Server in modalità utente singolo consente a qualsiasi membro del gruppo Administrators locale del computer di connettersi all'istanza di SQL Server come membro del ruolo predefinito del server sysadmin. Per altre informazioni, vedere Connessione a SQL Server quando gli Amministratori di sistema sono bloccati. Per altre informazioni sulla modalità utente singolo, vedere Avviare SQL Server in modalità utente singolo.
-m"Nome applicazione client" Limita le connessioni a un'applicazione client specificata quando si usa l'opzione -m con SQLCMD o SQL Server Management Studio. Ad esempio, -m"SQLCMD" limita le connessioni a una singola connessione che deve identificarsi come programma client SQLCMD. Usare questa opzione quando si avvia SQL Server in modalità utente singolo e un'applicazione client sconosciuta usa l'unica connessione disponibile. Per connettersi tramite il Editor di query in Management Studio, usare -m"Microsoft SQL Server Management Studio - Query".

Al nome dell'applicazione client viene applicata la distinzione maiuscole/minuscole.

** Nota di sicurezza ** Non usare questa opzione come funzionalità di sicurezza. L'applicazione client fornisce il nome dell'applicazione client stessa e può indicare un nome falso come parte della stringa di connessione.
-n Disattiva l'uso del registro applicazioni di Windows per la registrazione degli eventi di SQL Server. Se un'istanza di SQL Server viene avviata con -n, è consigliabile usare anche l'opzione di avvio -e. In caso contrario, gli eventi di SQL Server non verranno registrati.
-s Consente di avviare un'istanza denominata di SQL Server. Se il parametro -s non è impostato, verrà eseguito un tentativo di avviare l'istanza predefinita. Al prompt dei comandi è necessario passare alla directory BINN appropriata per l'istanza prima di avviare sqlservr.exe. Ad esempio, se Instance1 usa \mssql$Instance1 per i relativi file binari, l'utente deve passare alla directory \mssql$Instance1\binn per avviare sqlservr.exe -s instance1.
-T trace# Indica l'avvio di un'istanza di SQL Server con uno specifico flag di traccia (trace#) attivo. I flag di traccia vengono utilizzati per avviare il server con un funzionamento non standard. Per altre informazioni, vedere Flag di traccia (Transact-SQL).

** Importante ** Quando si specifica un flag di traccia con l'opzione -T , usare una "T" maiuscola per passare il numero del flag di traccia. La lettera "t" minuscola è accettata da SQL Server, ma imposta altri flag di traccia interni necessari solo ai tecnici del supporto tecnico di SQL Server. I parametri specificati nella finestra di avvio del Pannello di controllo non vengono letti.
-x Disabilita le caratteristiche di monitoraggio seguenti:

Contatori di MONITORAGGIO delle prestazioni di SQL Server

Registrazione di statistiche relative al tempo di CPU e alla frequenza di accesso alla cache

Raccolta di informazioni per il comando DBCC SQLPERF

Raccolta di informazioni per alcune viste a gestione dinamica

Molti punti evento di eventi estesi



** Avviso ** Quando si usa l'opzione di avvio -x , le informazioni disponibili per diagnosticare problemi funzionali e di prestazioni con SQL Server sono notevolmente ridotte.
-E Aumenta il numero di extent allocati per ogni file in un filegroup. Questa opzione può risultare utile per applicazioni del data warehouse per cui il numero di utenti che eseguono analisi dell'indice o dei dati è limitato. Si consiglia di non utilizzarla in altre applicazioni poiché potrebbe influire negativamente sulle prestazioni. Tale opzione non è supportata nelle versioni a 32 bit di SQL Server.

Utilizzo delle opzioni di avvio per la risoluzione dei problemi

Alcune opzioni di avvio, ad esempio la modalità utente singolo e con configurazione minima, vengono utilizzate principalmente per la risoluzione dei problemi. L'avvio del server con l'opzione -m o -f per la risoluzione dei problemi risulta più semplice dalla riga di comando durante l'avvio manuale di sqlservr.exe.

Nota

Quando SQL Server viene avviato usando net start, le opzioni di avvio usano una barra (/) anziché un trattino (-).

Utilizzo delle opzioni di avvio durante il funzionamento normale

Può essere necessario usare particolari opzioni a ogni avvio di SQL Server. Queste opzioni, ad esempio -g o a partire da un flag di traccia, vengono eseguite più facilmente configurando i parametri di avvio usando Gestione configurazione SQL Server. Questi strumenti consentono di salvare le opzioni di avvio come chiavi del Registro di sistema e di avviare SQL Server sempre con le opzioni di avvio.

Informazioni sulla compatibilità

Il parametro -h non è supportato in SQL Server 2014. Questo parametro è stato usato nelle versioni precedenti di istanze a 32 bit di SQL Server per riservare lo spazio degli indirizzi di memoria virtuale per l'aggiunta frequente di metadati di memoria quando AWE è abilitato. Per altre informazioni, vedere Funzionalità di SQL Server obsolete in SQL Server 2014.

Configurare l'opzione di configurazione del server scan for startup procs

Avviare, arrestare, sospendere, riprendere, riavviare il motore di database, SQL Server Agent o SQL Server Browser

Vedi anche

CHECKPOINT (Transact-SQL)
Applicazione sqlservr