sp_configure (Transact-SQL)

Gilt für: SQL Server Azure SQL Managed Instance Nicht unterstützt Azure Synapse Analytics Analytics Platform System (PDW)

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

Hinweis

Konfigurationsoptionen auf Datenbankebene finden Sie unter ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL). Informationen zum Konfigurieren von Soft-NUMA finden Sie unter Soft-NUMA (SQL Server).

Transact-SQL-Syntaxkonventionen

Syntax

-- Syntax for SQL Server  
  
sp_configure [ [ @configname = ] 'option_name'   
    [ , [ @configvalue = ] 'value' ] ]  
-- Syntax for Parallel Data Warehouse  
  
-- List all of the configuration options  
sp_configure  
[;]  
  
-- Configure Hadoop connectivity  
sp_configure [ @configname= ] 'hadoop connectivity',  
             [ @configvalue = ] { 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 }  
[;]  
RECONFIGURE  
[;]  

Argumente

[ @configname = ] 'option_name' Der Name einer Konfigurationsoption. option_name ist vom Datentyp varchar(35) . Der Standardwert ist NULL. Die SQL Server-Datenbank-Engine erkennt jede eindeutige Zeichenfolge, die Teil des Konfigurationsnamens ist. Erfolgt keine Angabe, wird die gesamte Liste der Optionen zurückgegeben.

Informationen zu den verfügbaren Konfigurationsoptionen und deren 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.

Den maximalen Wert für jede Option finden Sie in der maximalen Spalte der sys.configurations-Katalogsicht .

Rückgabecodewerte

„0“ (erfolgreich) oder „1“ (fehlerhaft)

Resultsets

Bei Ausführung ohne Parameter gibt sp_configure ein Resultset mit fünf Spalten zurück und sortiert die Optionen alphabetisch in aufsteigender Reihenfolge, wie in der folgenden Tabelle gezeigt.

Die Werte für config_value und run_value sind nicht automatisch gleichwertig. Nach dem Aktualisieren einer Konfigurationseinstellung mithilfe von sp_configure muss der Systemadministrator den ausgeführten Konfigurationswert entweder mithilfe von 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 Wert, auf den die Konfigurationsoption mithilfe von sp_configure (Wert in sys.configurations.value) festgelegt wurde. Weitere Informationen zu diesen Optionen finden Sie unter Serverkonfigurationsoptionen (SQL Server) und sys.configurations (Transact-SQL).
run_value int Derzeit ausgeführter Wert der Konfigurationsoption (Wert in sys.configurations.value_in_use).

Weitere Informationen finden Sie unter sys.configurations (Transact-SQL).

Bemerkungen

Verwenden Sie sp_configure , um Einstellungen auf Serverebene anzuzeigen oder zu ändern. Um Einstellungen auf Datenbankebene zu ändern, verwenden Sie ALTER DATABASE. Verwenden Sie die -Anweisung, um Einstellungen zu ändern, die sich nur auf die SET aktuelle Benutzersitzung auswirken.

Einige Serverkonfigurationsoptionen sind nur über ALTER SERVER CONFIGURATION (Transact-SQL) verfügbar.

Big Data-Cluster für SQL Server

Bestimmte Vorgänge, einschließlich der Konfiguration von Servereinstellungen (auf Instanzebene) oder manuelles Hinzufügen einer Datenbank zu einer Verfügbarkeitsgruppe, erfordern eine Verbindung mit der SQL Server-Instanz. Vorgänge wie sp_configure, RESTORE DATABASE oder ein beliebiger DDL-Befehl in einer Datenbank einer Verfügbarkeitsgruppe erfordern eine Verbindung mit der SQL Server-Instanz. Standardmäßig enthält ein Big Data-Cluster keinen Endpunkt, der eine Verbindung mit der Instanz ermöglicht. Sie müssen diesen Endpunkt manuell verfügbar machen.

Anweisungen finden Sie unter Herstellen einer Verbindung mit Datenbanken auf dem primären Replikat.

Aktualisieren des ausgeführten Konfigurationswerts

Wenn Sie einen neuen Wert für eine Option angeben, zeigt das Resultset diesen Wert in der spalte config_value an. Dieser Wert unterscheidet sich anfänglich vom Wert in der Spalte run_value , die den aktuell ausgeführten Konfigurationswert anzeigt. Um den Wert der ausgeführten Konfiguration in der Spalte run_value zu aktualisieren, 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 generiert RECONFIGURE einen Fehler, wenn der Wert des Wiederherstellungsintervalls größer als 60 Minuten ist oder wenn sich der Wert der Affinitätsmaske mit dem Wert der Affinitäts-E/A-Mask überlappt. Von RECONFIGURE WITH OVERRIDE hingegen werden alle Optionswerte vom richtigen Datentyp akzeptiert. Eine Neukonfiguration mit dem angegebenen Wert wird dann erzwungen.

Achtung

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. Beispielsweise werden die Optionen min server memory und max server memory server memory in the Database Engine dynamisch aktualisiert. Daher können Sie sie ändern, ohne den Server neu zu starten. Im Gegensatz dazu erfordert die Neukonfiguration des ausgeführten Werts der Option Füllfaktor einen Neustart der Datenbank-Engine.

Nachdem Sie RECONFIGURE für eine Konfigurationsoption ausgeführt haben, können Sie sehen, ob die Option dynamisch aktualisiert wurde, indem Sie sp_configure'option_name' ausführen. Die Werte in den Spalten run_value und config_value sollten mit einer dynamisch aktualisierten Option übereinstimmen. Sie können auch überprüfen, welche Optionen dynamisch sind, indem Sie sich die spalte is_dynamic der sys.configurations-Katalogsicht ansehen.

Die Änderung wird auch in das SQL Server Fehlerprotokoll geschrieben.

Hinweis

Wenn ein angegebener Wert für eine Option zu hoch ist, spiegelt die Spalte run_value die Tatsache wider, dass die Datenbank-Engine standardmäßig dynamischen Arbeitsspeicher verwendet, anstatt eine ungültige Einstellung zu verwenden.

Weitere Informationen finden Sie unter RECONFIGURE (Transact-SQL).

Erweiterte Optionen

Einige Konfigurationsoptionen, z. B . Affinitätsmaske und Wiederherstellungsintervall, werden als erweiterte Optionen festgelegt. Diese Optionen stehen zum Anzeigen und Ändern nicht zur Verfügung. Um sie verfügbar zu machen, legen Sie die Konfigurationsoption Erweiterte Optionen anzeigen auf 1 fest.

Achtung

Wenn die Option Erweiterte Optionen anzeigen auf 1 festgelegt ist, gilt diese Einstellung für alle Benutzer. Es wird empfohlen, diesen Zustand nur vorübergehend zu verwenden und wieder zu 0 zu wechseln, wenn sie mit der Aufgabe fertig sind, die die erweiterten Optionen anzeigen musste.

Weitere Informationen zu den Konfigurationsoptionen und deren 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. Um sp_configure mit beiden Parametern auszuführen, um eine Konfigurationsoption zu ändern oder die RECONFIGURE-Anweisung auszuführen, müssen Sie die ALTER SETTINGS-Berechtigung auf Serverebene erhalten. 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 options 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 options', '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;  

Beispiele: Analytics-Plattformsystem (PDW)

C. Auflisten aller verfügbaren Konfigurationseinstellungen

Im folgenden Beispiel wird dargestellt, wie alle Konfigurationsoptionen aufgelistet werden.

EXEC sp_configure;  

Das Ergebnis gibt den Optionsnamen zurück, gefolgt von den minimalen und maximalen Werten für die Option. Der config_value ist der Wert, den Azure Synapse Analytics verwendet, wenn die Neukonfiguration abgeschlossen ist. run_value ist der Wert, der gerade verwendet wird. config_value und run_value sind in der Regel gleich, sofern der Wert nicht gerade geändert wird.

D: Auflisten der Konfigurationseinstellungen für einen Konfigurationsnamen

EXEC sp_configure @configname='hadoop connectivity';  

E. Festlegen der Hadoop-Konnektivität

Das Festlegen der Hadoop-Konnektivität erfordert zusätzlich zum Ausführen von sp_configure noch einige weitere Schritte. Das vollständige Verfahren finden Sie unter CREATE EXTERNAL DATA SOURCE (Transact-SQL).

Weitere Informationen

ALTER SERVER CONFIGURATION (Transact-SQL)
RECONFIGURE (Transact-SQL)
SET-Anweisungen (Transact-SQL)
Serverkonfigurationsoptionen (SQL Server)
ALTER DATABASE (Transact-SQL)
Gespeicherte Systemprozeduren (Transact-SQL)
sys.configurations (Transact-SQL)
ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL)
Soft-NUMA (SQL Server)