sp_configure (Transact-SQL)
Mit dieser Prozedur können globale Konfigurationseinstellungen für den aktuellen Server angezeigt oder geändert werden.
Syntax
sp_configure [ [ @configname = ] 'option_name'
[ , [ @configvalue = ] 'value' ] ]
Argumente
[ @configname= ] 'option_name'
Der Name einer Konfigurationsoption. option_name ist vom Datentyp varchar(35) und hat den Standardwert NULL. Von SQL Server Database Engine (Datenbankmodul) wird jede eindeutige Zeichenfolge erkannt, die Teil des Konfigurationsnamens ist. Erfolgt keine Angabe, wird die gesamte Liste der Optionen zurückgegeben.Informationen zu den verfügbaren Konfigurationsoptionen und ihren Einstellungen finden Sie unter Festlegen von Serverkonfigurationsoptionen.
[ @configvalue= ] 'value'
Die neue Konfigurationseinstellung. value ist vom Datentyp int und hat den Standardwert NULL. Der Maximalwert kann je nach Option unterschiedlich sein.Der Maximalwert einer Option kann in der Katalogsicht sys.configurations in der Spalte maximum angezeigt werden.
Rückgabecodewerte
0 (Erfolg) oder 1 (Fehler)
Resultsets
Wird sp_configure ohne Parameter ausgeführt, wird ein Resultset mit fünf Spalten zurückgegeben. Die Optionen sind alphabetisch aufsteigend sortiert (siehe folgende Tabelle).
Die Werte für config_value und run_value sind nicht automatisch gleich. Nach dem Update einer Konfigurationseinstellung mithilfe von sp_configure muss der Systemadministrator den ausgeführten Konfigurationswert mit RECONFIGURE oder RECONFIGURE WITH OVERRIDE aktualisieren. Weitere Informationen finden Sie im Abschnitt mit den Hinweisen.
Spaltenname |
Datentyp |
Beschreibung |
---|---|---|
name |
nvarchar(35) |
Der Name der Konfigurationsoption. |
minimum |
int |
Der Mindestwert der Konfigurationsoption. |
maximum |
int |
Der Höchstwert der Konfigurationsoption. |
config_value |
int |
Der Wert, auf den die Konfigurationsoption mithilfe von sp_configure festgelegt wurde (Wert in sysconfigures.value). Weitere Informationen zu diesen Optionen finden Sie unter Festlegen von Serverkonfigurationsoptionen und sys.configurations (Transact-SQL). |
run_value |
int |
Aktuell ausgeführter Wert der Konfigurationsoption (Wert in sys.configurations.value_in_use). Weitere Informationen finden Sie unter sys.configurations (Transact-SQL). |
Hinweise
Verwenden Sie sp_configure, um Einstellungen auf Serverebene anzuzeigen oder zu ändern. Zum Ändern von Einstellungen auf Datenbankebene können Sie ALTER DATABASE verwenden. Wenn Einstellungen geändert werden sollen, die nur die aktuelle Benutzersitzung betreffen, verwenden Sie die SET-Anweisung.
Aktualisieren des ausgeführten Konfigurationswerts
Wenn Sie einen neuen value für eine option angeben, wird dieser Wert im Resultset in der config_value-Spalte angezeigt. Zunächst unterscheidet sich dieser Wert von dem Wert in der run_value-Spalte, in der der aktuell ausgeführte Konfigurationswert angezeigt wird. Zum Update des ausgeführten Konfigurationswerts in der run_value-Spalte muss der Systemadministrator entweder RECONFIGURE oder RECONFIGURE WITH OVERRIDE ausführen.
RECONFIGURE und RECONFIGURE WITH OVERRIDE können für jede Konfigurationsoption verwendet werden. Die einfache RECONFIGURE-Anweisung weist jedoch Optionswerte zurück, die außerhalb eines angemessenen Bereichs liegen oder die zu Konflikten bei den Optionen führen. Beispielsweise ein Fehler generiert, wenn der recovery interval-Wert größer ist als 60 Minuten oder wenn sich der affinity mask-Wert mit dem affinity I/O mask-Wert überschneidet. Von RECONFIGURE WITH OVERRIDE hingegen werden alle Optionswerte vom richtigen Datentyp akzeptiert. Eine Neukonfiguration mit dem angegebenen Wert wird dann erzwungen.
Vorsicht |
---|
Ein nicht geeigneter Optionswert kann negative Auswirkungen auf die Konfiguration der Serverinstanz haben. Verwenden Sie RECONFIGURE WITH OVERRIDE mit Sorgfalt. |
Mit der RECONFIGURE-Anweisung werden einige Optionen dynamisch aktualisiert. Für andere Optionen ist jedoch das Beenden und Neustarten des Servers erforderlich. Die Optionen min server memory und max server memory für den Serverarbeitsspeicher werden in Database Engine (Datenbankmodul) z. B. dynamisch aktualisiert. Daher können ihre Werte ohne einen Neustart des Servers geändert werden. Die Neukonfiguration des ausgeführten Werts der Option fill factor erfordert hingegeben einen Neustart von Database Engine (Datenbankmodul).
Nach dem Ausführen von RECONFIGURE für eine Konfigurationsoption können Sie durch Ausführen von sp_configure'option_name' erkennen, ob die Option dynamisch aktualisiert wurde. Bei einer dynamisch aktualisierten Option stimmen die Werte in den Spalten run_value und config_value überein. Eine weitere Möglichkeit zum Erkennen dynamischer Optionen besteht darin, in der Katalogsicht sys.configurations die is_dynamic-Spalte zu überprüfen.
Hinweis |
---|
Wenn ein angegebener Wert für value für eine Option zu groß ist, wird in der run_value-Spalte dargestellt, dass von Database Engine (Datenbankmodul) standardmäßig dynamischer Arbeitsspeicher statt einer ungültigen Einstellung verwendet wird. |
Weitere Informationen finden Sie unter RECONFIGURE (Transact-SQL).
Erweiterte Optionen
Einige Konfigurationsoptionen, wie z. B. affinity mask und recovery interval, werden als erweiterte Optionen bezeichnet. Diese Optionen stehen zum Anzeigen und Ändern nicht zur Verfügung. Sie können zur Verfügung gestellt werden, wenn Sie die Konfigurationsoption ShowAdvancedOptions auf 1 festlegen.
Weitere Informationen zu Konfigurationsoptionen und ihren Einstellungen finden Sie unter Festlegen von Serverkonfigurationsoptionen.
Berechtigungen
Die Ausführungsberechtigungen für sp_configure ohne Parameter oder nur mit dem ersten Parameter werden standardmäßig allen Benutzern erteilt. Zum Ausführen von sp_configure mit beiden Parametern zum Ändern einer Konfigurationsoption oder zum Ausführen der RECONFIGURE-Anweisung muss Ihnen die ALTER SETTINGS-Berechtigung auf Serverebene erteilt worden sein. Die ALTER SETTINGS-Berechtigung ist in den festen Serverrollen sysadmin und serveradmin eingeschlossen.
Beispiele
A. Auflisten der erweiterten Konfigurationsoptionen
Im folgenden Beispiel wird das Festlegen und Auflisten aller Konfigurationsoptionen dargestellt. Erweiterte Konfigurationsoptionen werden angezeigt, indem zunächst show advanced option auf 1 festgelegt wird. Nachdem diese Option geändert wurde, werden beim Ausführen von sp_configure ohne Parameter alle Konfigurationsoptionen angezeigt.
USE master;
GO
EXEC sp_configure 'show advanced option', '1';
Im Folgenden wird die Meldung aufgeführt: "Die Konfigurationsoption 'show advanced options' wurde von 0 in 1 geändert. Führen Sie zum Installieren die RECONFIGURE-Anweisung aus."
Führen Sie RECONFIGURE aus, und zeigen Sie alle Konfigurationsoptionen an:
RECONFIGURE;
EXEC sp_configure;
B. Ändern einer Konfigurationsoption
Im folgenden Beispiel wird recovery interval für das System auf 3 Minuten festgelegt.
USE master;
GO
EXEC sp_configure 'recovery interval', '3';
RECONFIGURE WITH OVERRIDE;