Ausführen von Onlineindexvorgängen
Sie können Indizes online erstellen, neu erstellen oder löschen. Die ONLINE-Option ermöglicht, dass Benutzer während dieser Indexvorgänge gleichzeitig auf die dem Index zugrunde liegende Tabelle oder auf Daten eines gruppierten Indexes sowie auf alle eventuell damit verbundenen nicht gruppierten Indizes zugreifen können. Während beispielsweise ein gruppierter Index von einem Benutzer neu erstellt wird, kann dieser Benutzer – und alle anderen Benutzer – weiterhin die dem Index zugrunde liegenden Daten aktualisieren oder abfragen. Wenn Sie DDL-Vorgänge wie z. B. das Erstellen oder Neuerstellen eines gruppierten Indexes offline ausführen, richten diese Vorgänge exklusive Sperren für die dem Index zugrunde liegenden Daten und damit verbundene Indizes ein. Damit werden Änderungen und Abfragen der zugrunde liegenden Daten verhindert, bis der Indexvorgang abgeschlossen ist.
Hinweis |
---|
Online-Indexvorgänge sind nur in der SQL Server Enterprise, Developer und Evaluation Edition verfügbar. |
Onlineindexvorgänge werden in Geschäftsumgebungen empfohlen, die rund um die Uhr und 7 Tage die Woche aktiv sind, d. h. für die eine gleichzeitige Benutzeraktivität während Indexvorgängen unabdingbar ist.
Die ONLINE-Option ist in folgenden Transact-SQL-Anweisungen verfügbar:
ALTER TABLE (zum Hinzufügen oder Löschen von UNIQUE- oder PRIMARY KEY-Einschränkungen mit der CLUSTERED-Indexoption)
Weitere Informationen zur Onlineindexvorgängen finden Sie unter Funktionsweise von Onlineindexvorgängen und Richtlinien zum Ausführen von Onlineindexvorgängen.
Beispiel
Im folgenden Beispiel werden alle Indizes der Product-Tabelle der AdventureWorks-Beispieldatenbank neu erstellt.
USE AdventureWorks;
GO
ALTER INDEX ALL ON Production.Product
REBUILD WITH (ONLINE = ON);