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


sp_fulltext_service (Transact-SQL)

Область применения: SQL Server

Изменяет серверные свойства полнотекстового поиска для SQL Server.

Внимание

Действие upgrade_option не полностью поддерживается в SQL Server 2022 (16.x) и более поздних версиях. Дополнительные сведения см . в разделе "Совместимость с SQL Server 2022 и более поздними версиями " далее в этой статье.

Соглашения о синтаксисе Transact-SQL

Синтаксис

sp_fulltext_service
    [ [ @action = ] N'action' ]
    [ , [ @value = ] value ]
[ ; ]

Аргументы

[ @action = ] N'action'

Свойство, которое необходимо изменить или сбросить. @action — nvarchar(100), без значения по умолчанию. Список свойств @action, их описания и значения, которые можно задать, см. в таблице в аргументе @value.

Этот аргумент возвращает следующие свойства:

  • тип данных
  • текущее запущенное значение
  • минимальное или максимальное значение
  • состояние нерекомендуемого значения, если применимо.

[ @value = ] value

@value sql_variant с значением по умолчаниюNULL.

Значение указанного свойства. @value sql_variant со значением NULLпо умолчанию. Если @value имеет значение NULL, sp_fulltext_service возвращает текущий параметр. В этой таблице перечислены свойства действий, их описания, а также возможные значения.

Примечание.

Следующие действия будут удалены в будущем выпуске SQL Server: clean_up, , connect_timeoutdata_timeoutи resource_usage. Следует избегать использования этих действий в новой разработке и запланировать изменение приложений, использующих их в настоящий момент.

Действие Тип данных Description
clean_up int Поддерживается только для обеспечения обратной совместимости. Значение всегда 0равно.
connect_timeout int Поддерживается только для обеспечения обратной совместимости. Значение всегда 0равно.
data_timeout int Поддерживается только для обеспечения обратной совместимости. Значение всегда 0равно.
load_os_resources int Указывает, регистрируются ли и используются в этом экземпляре SQL Server средства разбиения по словам операционной системы, стволовые модули и фильтры. Одно из двух значений:

0 = используйте только фильтры и средства разбиения слов, относящиеся к этому экземпляру SQL Server.

1 = загрузка фильтров операционной системы и разбиений по словам.

По умолчанию это свойство отключено во избежание непреднамеренных изменений, которые могут быть внесены в операционную систему при обновлении. Включение использования ресурсов операционной системы обеспечивает доступ к ресурсам для языков и типов документов, зарегистрированных в службе индексирования Майкрософт, у которых нет установленного ресурса конкретного экземпляра. Если вы включите загрузку ресурсов операционной системы, убедитесь, что ресурсы операционной системы являются доверенными подписанными двоичными файлами; в противном случае они не могут быть загружены, если verify_signature задано значение 1.
master_merge_dop int Указывает количество потоков, которые будут использоваться в процессе слияния в единый документ. Это значение не должно превышать количество доступных ЦП или ядер ЦП.

Если этот аргумент не указан, служба использует меньшее 4количество процессоров или ядер ЦП.
pause_indexing int Указывает, следует ли приостанавливать полнотекстовый индексирование, если он выполняется в данный момент или возобновляется, если он приостановлен.

0 = возобновляет действия полнотекстового индексирования для экземпляра сервера.

1 = приостанавливает действия полнотекстового индексирования для экземпляра сервера.
resource_usage int Не имеет функции в SQL Server 2008 (10.0.x) и более поздних версиях и игнорируется.
update_languages NULL Обновляет список языков и фильтров, зарегистрированных для полнотекстового поиска. Языки указываются при настройке индексирования и полнотекстовых запросов. Фильтры используются управляющей службой фильтра для извлечения текстовых данных из соответствующих форматов файлов, таких как хранящиеся в типах данных, таких как .docx varbinary, varbinary(max),image или xml для полнотекстового индексирования.

Дополнительные сведения см. в разделе "Просмотр или изменение зарегистрированных фильтров и разбиений слов".
upgrade_option int Определяет, как полнотекстовые индексы переносятся при обновлении базы данных с SQL Server 2005 (9.x) до более поздней версии. Это свойство применяется к обновлению, выполняемому путем присоединения базы данных, восстановления базы данных из резервной копии или восстановления файла из резервной копии, а также в случае, если база данных копируется мастером копирования баз данных.

Одно из двух значений:

- 0 = полнотекстовые каталоги перестроены с помощью новых и расширенных средств разбиения слов. Перестроение индексов может занять некоторое время, и после обновления может потребоваться значительное количество ЦП и памяти.

- 1 = сбрасываются полнотекстовые каталоги. Файлы полнотекстового каталога SQL Server 2005 (9.x) удаляются, но метаданные для полнотекстовых каталогов и полнотекстовых индексов сохраняются. После обновления все полнотекстовые индексы отключены для отслеживания изменений и обходы не запускаются автоматически. После завершения обновления каталог останется пустым, пока не будет вручную запущено полное заполнение.

- 2 = импортируются полнотекстовые каталоги. Как правило, импорт выполняется быстрее, чем перестроение. Например, если используется только один ЦП, то импорт выполняется в 10 раз быстрее, чем перестроение. Однако импортированный полнотекстовый каталог не использует новые и расширенные средства разбиения слов, поэтому вместо этого может потребоваться перестроить полнотекстовые каталоги. Удалены в SQL Server 2022 (16.x) и более поздних версиях и возникает ошибка.

Примечание. Перестроение может выполняться в режиме с несколькими потоками, и если доступно более 10 ЦП, перестроение может выполняться быстрее, чем импорт, если разрешено перестроить все ЦП.

Если полнотекстовый каталог недоступен, связанные полнотекстовые индексы перестроены. Этот параметр доступен только для баз данных SQL Server 2005 (9.x).

Сведения о выборе параметра полнотекстового обновления см. в статьеОбновление полнотекстового поиска.

Примечание. Чтобы задать это свойство в SQL Server Management Studio, используйте свойство параметра полнотекстового обновления . Дополнительные сведения см. в разделе Управление и наблюдение за полнотекстовым поиском для экземпляра сервера.
verify_signature int Указывает, загружает ли модуль полнотекстовых файлов только подписанные двоичные файлы. По умолчанию загружаются только доверенные, подписанные двоичные файлы.

1 = убедитесь, что загружаются только доверенные двоичные файлы, подписанные (по умолчанию).

0 = Не проверяйте, подписаны ли двоичные файлы.

Значения кода возврата

0 (успешно) или 1 (сбой).

Результирующий набор

Нет.

Совместимость с SQL Server 2022 и более поздними версиями

Функция импорта в действии (указана@action = 'upgrade_option', @value = 2) удаляется в upgrade_option SQL Server 2022 (16.x) и более поздних версиях. Если необходимо импортировать полнотекстовый индекс из более старой версии SQL Server, его можно импортировать с помощью SQL Server 2019 (15.x) или более ранних версий, а затем обновить до SQL Server 2022 (16.x).

Разрешения

Могут выполняться sp_fulltext_serviceтолько члены предопределенных ролей сервера serveradmin или системный администратор.

Примеры

А. Обновление списка зарегистрированных языков

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

EXECUTE sp_fulltext_service 'update_languages';
GO

B. Изменение параметра полнотекстового обновления для сброса полнотекстовых каталогов

В следующем примере изменяется параметр полнотекстового обновления, чтобы сбросить полнотекстовые каталоги, удалив их полностью. В этом примере указаны необязательные аргументы @action и @value .

EXECUTE sp_fulltext_service
    @action = 'upgrade_option',
    @value = 1;
GO