Konfigurieren des Speichers für Indexerstellung (Serverkonfigurationsoption)

Gilt für:SQL Server

In diesem Thema wird beschrieben, wie die Serverkonfigurationsoption Speicher für Indexerstellung in SQL Server mithilfe von SQL Server Management Studio oder Transact-SQL konfiguriert wird. Mit der Option Speicher für Indexerstellung wird der maximale Umfang des für Sortiervorgänge beim Erstellen von Indizes zu Beginn zugeordneten Arbeitsspeichers gesteuert. Der Standardwert für diese Option beträgt 0 (Selbstkonfiguration). Wenn später für die Indexerstellung mehr Speicherplatz benötigt wird und noch Speicherplatz verfügbar ist, wird dieser vom Server verwendet, und der für die Option festgelegte Wert wird überschritten. Wenn kein Speicherplatz mehr verfügbar ist, wird die Indexerstellung so lange fortgesetzt, wie der bereits zugeordnete Speicherplatz gestattet.

In diesem Thema

Vorbereitungen

Einschränkungen

  • Die Einstellung der Option Min. Arbeitsspeicher pro Abfrage hat Vorrang vor der Option Speicher für Indexerstellung. Wenn Sie beide Optionen ändern und der Wert von index create memory (Speicher für Indexerstellung) den Wert von min memory per query(Min. Arbeitsspeicher pro Abfrage) unterschreitet, werden die Werte zwar festgelegt, es wird jedoch eine Warnmeldung ausgegeben. Eine ähnliche Warnmeldung erhalten Sie auch während der Ausführung.

  • Bei der Verwendung von partitionierten Tabellen und Indizes können sich die Mindestanforderungen für den zur Indexerstellung benötigten Speicherplatz bei nicht ausgerichteten partitionierten Indizes und einem hohen Parallelitätsgrad erheblich erhöhen. Mit dieser Option wird gesteuert, wie viel Arbeitsspeicher den Indexpartitionen eines einzelnen Indexerstellungsvorgangs insgesamt zugeordnet wird. Wenn der durch die Option festgelegte Wert das zur Ausführung der Abfrage erforderliche Minimum unterschreitet, wird die Abfrage mit einem Fehler beendet.

  • Die tatsächliche Speicherkapazität, die für das Betriebssystem und die Hardwareplattform, auf der SQL Server ausgeführt wird, verwendet werden kann, wird durch den Ausführungswert dieser Option nicht überschritten.

Empfehlungen

  • Diese Option ist eine erweiterte Option und sollte ausschließlich von einem erfahrenen Datenbankadministrator oder einem zertifizierten SQL Server -Experten geändert werden.

  • Die Option Speicher für Indexerstellung ist eine selbstkonfigurierende Option, die im Normalfall nicht angepasst werden muss. Wenn Sie jedoch Schwierigkeiten beim Erstellen von Indizes feststellen, sollten Sie den Wert dieser Option abweichend vom Ausführungswert erhöhen.

  • Auf einem Produktionssystem wird ein Index in der Regel sehr selten erstellt; diese Aufgabe wird stattdessen häufig als Auftrag zur Ausführung außerhalb der Geschäftszeiten geplant. Wenn Indizes selten und außerhalb der Hauptgeschäftszeiten erstellt werden, kann die Indexerstellungsleistung daher durch Erhöhen von Speicher für Indexerstellung verbessert werden. Sie sollten die Konfigurationsoption Min. Arbeitsspeicher pro Abfrage jedoch auf einen niedrigen Wert festlegen, sodass der Indexerstellungsauftrag gestartet wird, auch wenn der angeforderte Arbeitsspeicher nicht verfügbar ist.

Sicherheit

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 einem Benutzer die ALTER SETTINGS-Berechtigung auf Serverebene erteilt worden sein. Die ALTER SETTINGS-Berechtigung ist in den festen Serverrollen sysadmin und serveradmin eingeschlossen.

Verwendung von SQL Server Management Studio

So konfigurieren Sie die Option "Speicher für Indexerstellung"

  1. Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf einen Server, und wählen Sie Eigenschaften aus.

  2. Klicken Sie auf den Speicher -Knoten.

  3. Geben Sie unter Speicher für Indexerstellungden gewünschten Wert für die Option „Speicher für Indexerstellung“ ein, oder wählen Sie einen Wert aus.

    Sie können mit der Option Speicher für Indexerstellung den Umfang an Speicherplatz steuern, der für Sortiervorgänge bei der Indexerstellung verwendet wird. Bei der Option Speicher für Indexerstellung handelt es sich um eine selbstkonfigurierende Option, die in den meisten Fällen ohne weitere Anpassung funktionieren sollte. Wenn Sie jedoch Schwierigkeiten beim Erstellen von Indizes feststellen, sollten Sie den Wert dieser Option abweichend vom Ausführungswert erhöhen. Das Sortieren von Abfragen wird über die Option Min. Arbeitsspeicher pro Abfrage gesteuert.

Verwenden von Transact-SQL

So konfigurieren Sie die Option "Speicher für Indexerstellung"

  1. Stellen Sie eine Verbindung mit dem Datenbank-Engineher.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.

  3. Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen. In diesem Beispiel wird gezeigt, wie sp_configure verwendet wird, um den Wert der Option index create memory auf 4096festzulegen.

USE AdventureWorks2022;  
EXEC sp_configure 'show advanced options', 1;  
GO  
RECONFIGURE;  
GO  
EXEC sp_configure 'index create memory', 4096  
GO  
RECONFIGURE;  
GO  

Weitere Informationen finden Sie unter Serverkonfigurationsoptionen (SQL Server).

Nachverfolgung: Nach dem Konfigurieren der Option Speicher für Indexerstellung

Die Einstellung tritt ohne Neustarten des Servers sofort in Kraft.

Weitere Informationen

sys.configurations (Transact-SQL)
RECONFIGURE (Transact-SQL)
Serverkonfigurationsoptionen für den Serverarbeitsspeicher
Serverkonfigurationsoptionen (SQL Server)
sp_configure (Transact-SQL)