Поделиться через


Выполнение операции с индексами в сети

Индексы можно создавать, перестраивать и удалять в режиме в сети. Параметр ONLINE разрешает одновременный доступ пользователей к базовой таблице или данным кластеризованного индекса и всем связанным некластеризованным индексам во время выполнения этих операций с индексами. Например, пока пользователь перестраивает кластеризованный индекс, он и другие пользователи могут продолжать обновление базовых данных и осуществлять к ним запросы. При выполнении DDL-операций в режиме вне сети, таких как построение или перестроение кластеризованного индекса, эти операции удерживают монопольные блокировки на базовые данные и связанные индексы. Это предотвращает изменение базовых данных и осуществление запросов к ним до завершения операции с индексами.

ПримечаниеПримечание

Операции с индексами в режиме «в сети» доступны только в выпусках SQL Server Enterprise, Developer и Evaluation.

Рекомендуется выполнять операции с индексами в сети в производственной среде, работающей 24 часа в сутки и семь дней в неделю, когда имеется насущная необходимость одновременных действий пользователей во время выполнения операций с индексами.

Параметр ONLINE доступен в следующих инструкциях языка Transact-SQL.

Дополнительные сведения о операциях с индексами в сети см. в разделе О фоновых операциях с индексом и Правила выполнения фоновых операций с индексами.

Пример

В следующем примере все индексы таблицы Product в образце базы данных AdventureWorks2008R2 перестраиваются в режиме в сети.

USE AdventureWorks2008R2;
GO
ALTER INDEX ALL ON Production.Product
REBUILD WITH (ONLINE = ON);