Freigeben über


sp_configure (Transact-SQL)

Mit dieser Prozedur können globale Konfigurationseinstellungen für den aktuellen Server angezeigt oder geändert werden.

Gilt für: SQL Server (SQL Server 2008 bis aktuelle Version).

Themenlink (Symbol) Transact-SQL-Syntaxkonventionen

Syntax

sp_configure [ [ @configname = ] 'option_name' 
    [ , [ @configvalue = ] 'value' ] ]

Argumente

  • [ @configname= ] 'option_name'
    Der Name einer Konfigurationsoption. option_name ist vom Datentyp varchar(35). Der Standardwert ist 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 Serverkonfigurationsoptionen (SQL Server).

  • [ @configvalue= ] 'value'
    Die neue Konfigurationseinstellung. value ist vom Datentyp int. Der Standardwert ist 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 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 Serverkonfigurationsoptionen (SQL Server) 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 Wiederherstellungsintervall-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.

Warnung

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 Wiederherstellungsintervall, 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 Serverkonfigurationsoptionen (SQL Server).

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 Wiederherstellungsintervall für das System auf 3 Minuten festgelegt.

USE master;
GO
EXEC sp_configure 'recovery interval', '3';
RECONFIGURE WITH OVERRIDE;

Siehe auch

Verweis

RECONFIGURE (Transact-SQL)

SET-Anweisungen (Transact-SQL)

ALTER DATABASE (Transact-SQL)

Gespeicherte Systemprozeduren (Transact-SQL)

sys.configurations (Transact-SQL)

Konzepte

Serverkonfigurationsoptionen (SQL Server)