Startoptionen für den Datenbankmoduldienst
Startoptionen legen bestimmte während des Starts benötigte Speicherorte fest und legen einige Bedingungen fest, die für den gesamten Server gelten. Die meisten Benutzer müssen keine Startoptionen angeben, es sei denn, Sie führen Fehlerbehebungen für Database Engine (Datenbankmodul) durch oder es liegt ein ein außergewöhnliches Problem vor, und und Sie werden vom SQL Server-Produktsupport aufgefordert, eine Startoption zu verwenden.
Vorsicht |
---|
Die falsche Verwendung von Startoptionen kann die Serverleistung beeinträchtigen und verhindern, dass SQL Server startet. |
Informationen zu Startoptionen
Wenn Sie SQL Server installieren, schreibt Setup eine Reihe von Standardstartoptionen in die Microsoft Windows-Registrierung. Sie können die folgenden Startoptionen verwenden, um eine andere master-Datenbankdatei, eine andere Protokolldatei der master-Datenbank oder eine andere Fehlerprotokolldatei anzugeben. Wenn Database Engine (Datenbankmodul) die notwendigen Dateien nicht finden kann, startet SQL Server nicht.
Startoptionen können mithilfe des SQL Server-Konfigurations-Managers festgelegt werden. Weitere Informationen finden Sie unter Konfigurieren von Serverstartoptionen (SQL Server-Konfigurations-Manager).
Liste von Startoptionen
Standardstartoptionen |
Beschreibung |
---|---|
-d master_file_path |
Der vollqualifizierte Pfad der master-Datenbankdatei (in der Regel C:\Programme\Microsoft SQL Server\MSSQL.n\MSSQL\Data\master.mdf). Wenn diese Option nicht bereitgestellt wird, werden die vorhandenen Registrierungsparameter verwendet. |
-e error_log_path |
Der vollqualifizierte Pfad der Fehlerprotokolldatei (in der Regel C:\Programme\Microsoft SQL Server\MSSQL.n\MSSQL\LOG\ERRORLOG). Wenn diese Option nicht bereitgestellt wird, werden die vorhandenen Registrierungsparameter verwendet. |
-l master_log_path |
Der vollqualifizierte Pfad der master-Datenbankprotokolldatei (in der Regel C:\Programme\Microsoft SQL Server\MSSQL.n\MSSQL\Data\mastlog.ldf). Wenn diese Option nicht angegeben wird, werden die vorhandenen Registrierungsparameter verwendet. |
Sonstige Startoptionen |
Beschreibung |
||
---|---|---|---|
-c |
Verkürzt die Startzeit, wenn SQL Server an der Eingabeaufforderung gestartet wird. In der Regel wird SQL Server Database Engine (Datenbankmodul) als Dienst gestartet, indem der Dienstkontroll-Manager aufgerufen wird. Da SQL Server Database Engine (Datenbankmodul) nicht als Dienst gestartet wird, wenn die Anwendung an der Eingabeaufforderung gestartet wird, sollten Sie diesen Schritt mithilfe von -c überspringen. |
||
-f |
Startet eine SQL Server-Instanz mit Minimalkonfiguration. Dies ist hilfreich, wenn der Server aufgrund der Einstellung eines Konfigurationswerts (z. B. aufgrund von Arbeitsspeichermangel) nicht gestartet werden kann. Wenn Sie SQL Server mit der Minimalkonfiguration starten, wird SQL Server im Einzelbenutzermodus gestartet. Weitere Informationen finden Sie in der nachfolgenden Beschreibung von -m. |
||
-g memory_to_reserve |
Gibt in Form einer ganzen Zahl an, wie viele Megabytes (MB) des Arbeitsspeichers SQL Server für Arbeitsspeicherbelegungen innerhalb des SQL Server-Prozesses, jedoch außerhalb des SQL Server-Arbeitspeicherpools übrig lässt. Der Arbeitsspeicher außerhalb des Arbeitsspeicherpools ist der Bereich, der von SQL Server zum Laden von Elementen verwendet wird, z. B. DLL-Dateien von erweiterten gespeicherten Prozeduren, die OLE DB-Anbieter, auf die in verteilten Abfragen verwiesen wird, und Automatisierungsobjekte, auf die in Transact-SQL-Anweisungen verwiesen wird. Die Standardeinstellung ist 256 MB. Diese Option kann Ihnen helfen, die Speicherbelegung zu optimieren. Dies gilt jedoch nur, wenn der physische Arbeitsspeicher das konfigurierte Limit überschreitet, das vom Betriebssystem für den virtuellen Arbeitsspeicher, der für Anwendungen verfügbar ist, festgelegt wird. Die Verwendung dieser Option ist möglicherweise für Konfigurationen mit sehr viel Arbeitsspeicher geeignet, bei denen die Anforderungen an die Speicherauslastung von SQL Server untypisch sind und der virtuelle Adressraum des SQL Server-Prozesses vollständig verwendet wird. Eine falsche Verwendung dieser Option kann dazu führen, dass eine SQL Server-Instanz nicht gestartet werden kann oder dass Laufzeitfehler auftreten. Verwenden Sie den Standardwert für den -g-Parameter, es sei denn, das SQL Server-Fehlerprotokoll enthält eine der folgenden Warnungen:
Diese Meldungen können darauf hinweisen, dass SQL Server versucht, Teile des SQL Server-Speicherpools freizugeben, um Speicherplatz für Elemente wie DLL-Dateien von erweiterten gespeicherten Prozeduren oder Automatisierungsobjekte zu erhalten. In diesem Fall sollten Sie erwägen, den durch den Schalter -g reservierten Umfang an Arbeitsspeicher zu erhöhen. Das Verwenden eines Werts, der niedriger als der Standardwert ist, erhöht den Umfang des Arbeitsspeichers, der für den vom SQL Server-Speicher-Manager verwalteten Speicherpool und die Threadstacks zur Verfügung steht. Dies bedeutet wiederum möglicherweise eine gewisse Verbesserung der Leistung für arbeitsspeicherintensive Arbeitsauslastungen in Systemen, die nicht viele erweiterte gespeicherte Prozeduren, verteilte Abfragen oder Automatisierungsobjekte verwenden. |
||
-m |
Startet eine Instanz von SQL Server im Einzelbenutzermodus. Wenn Sie eine Instanz von SQL Server im Einzelbenutzermodus starten, kann nur ein einziger Benutzer eine Verbindung herstellen, und der CHECKPOINT-Prozess wird nicht gestartet. Durch CHECKPOINT wird sichergestellt, dass die abgeschlossenen Transaktionen regelmäßig vom Datenträgercache auf das Datenbankmedium geschrieben werden. (In der Regel verwenden Sie diese Option bei Problemen mit Systemdatenbanken, die repariert werden sollten.) Aktiviert die sp_configure allow updates-Option. Standardmäßig ist allow updates deaktiviert. Das Starten von SQL Server im Einzelbenutzermodus ermöglicht es einem beliebigen Mitglied der lokalen Administratorengruppe des Computers, eine Verbindung zu der Instanz von SQL Server als Mitglied der festen Serverrolle sysadmin herzustellen. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit SQL Server, wenn Systemadministratoren gesperrt sind. Weitere Informationen zum Einzelbenutzermodus finden Sie unter Starten von SQL Server im Einzelbenutzermodus. |
||
-m"Client Application Name" |
Beschränkt die Verbindungen auf eine angegebene Clientanwendung, wenn Sie die -m-Option mit SQLCMD oder SQL Server Management Studio verwenden. -m"SQLCMD" beschränkt Verbindungen z. B. auf eine einzelne Verbindung, und diese Verbindung muss sich als SQLCMD-Clientprogramm identifizieren. Verwenden Sie diese Option, wenn Sie SQL Server im Einzelbenutzermodus starten und eine unbekannte Clientanwendung die einzige verfügbare Verbindung belegt. Um über den Abfrage-Editor von Management Studio eine Verbindung herzustellen, verwenden Sie -m"Microsoft SQL Server Management Studio - Query". Beim Clientanwendungsnamen wird zwischen Groß- und Kleinschreibung unterschieden.
|
||
-n |
Zeichnet keine SQL Server-Ereignisse mithilfe des Windows-Anwendungsprotokolls auf. Wenn Sie eine SQL Server-Instanz mit der Option -n starten, sollten Sie auch die Startoption -e verwenden. Andernfalls werden keine SQL Server-Ereignisse protokolliert. |
||
-s |
Ermöglicht es Ihnen, eine benannte SQL Server-Instanz zu starten. Wurde der -s-Parameter nicht festgelegt, wird versucht, die Standardinstanz zu starten. Sie müssen an der Eingabeaufforderung in das entsprechende BINN-Verzeichnis für die Instanz wechseln, bevor Sie sqlservr.exe starten. Wenn Instance1 beispielsweise das Verzeichnis "\mssql$Instance1" für die zugehörigen Binärdateien verwendet, muss der Benutzer zum Verzeichnis "\mssql$Instance1\binn" wechseln, um sqlservr.exe -s instance1 starten zu können. |
||
-T trace# |
Gibt an, dass eine SQL Server-Instanz so gestartet werden soll, dass ein bestimmtes Ablaufverfolgungsflag (trace#) wirksam wird. Ablaufverfolgungsflags werden verwendet, um den Server mit nicht standardmäßigem Verhalten zu starten. Weitere Informationen finden Sie unter Ablaufverfolgungsflags (Transact-SQL).
|
||
-x |
Deaktiviert die folgenden Überwachungsfunktionen:
|
||
-E |
Erhöht die Anzahl der Blöcke, die jeder Datei in einer Dateigruppe zugeordnet werden. Diese Option ist möglicherweise bei Data Warehouse-Anwendungen nützlich, bei denen nur eine eingeschränkte Anzahl von Benutzern Index- oder Datenscans ausführen. Sie sollte bei anderen Anwendungen nicht verwendet werden, da sie sich möglicherweise negativ auf die Leistung auswirkt. Diese Option wird in 32-Bit-Versionen von SQL Server nicht unterstützt. |
Verwenden von Startoptionen für die Problembehandlung
Manche Startoptionen, z. B. der Einzelbenutzermodus und der Minimalkonfigurationsmodus, werden in erster Linie für die Problembehandlung verwendet. Um den Server für die Problembehandlung mit den Optionen –m oder –f zu starten, verwenden Sie am besten die Befehlszeile, während Sie "sqlservr.exe" manuell starten.
Hinweis |
---|
Wird SQL Server mithilfe von net start gestartet, wird ein Schrägstrich (/) anstelle eines Bindestriches (-) für die Startoptionen verwendet. |
Verwenden von Startoptionen im normalen Betrieb
Sie können Startoptionen bei jedem Start von SQL Server verwenden. Für diese Optionen, z. B. –g oder das Starten mit einem Ablaufverfolgungsflag, konfigurieren Sie die Startparameter am besten mit dem SQL Server-Konfigurations-Manager. Dieses Tool speichert die Startoptionen als Registrierungsschlüssel, sodass SQL Server stets mit den Startoptionen gestartet werden kann.
Kompatibilitätsunterstützung
Der Parameter -h wird in SQL Server 2012 nicht unterstützt. Dieser Parameter wurde in früheren Versionen der 32-Bit-Instanzen von SQL Server verwendet, um virtuellen Adressraum für Metadaten zum Hinzufügen von Speicher im laufenden Systembetrieb (Hot Add Memory) zu reservieren, wenn AWE aktiviert ist. Weitere Informationen finden Sie unter Nicht mehr unterstützte SQL Server-Funktionen in SQL Server 2012.
Verwandte Aufgaben
Konfigurieren der Serverkonfigurationsoption Startprozeduren suchen