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


sys.dm_fts_active_catalogs (Transact-SQL)

Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure

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

Примечание.

Следующие столбцы будут удалены в будущей версии Microsoft SQL Server: is_paused, previous_status, previous_status_description, row_count_in_thousands, состояние, status_description и worker_count. Избегайте использовать эти столбцы в новых разработках и запланируйте изменение приложений, где они используются в настоящий момент.

Имя столбца Тип данных Description
database_id int Идентификатор базы данных, содержащей активный полнотекстовый каталог.
catalog_id int Идентификатор активного полнотекстового каталога.
memory_address varbinary(8) Адрес буферов памяти, выделенных для операции заполнения, относящейся к полнотекстовому каталогу.
name nvarchar(128) Имя активного полнотекстового каталога.
is_paused bit Указывает, было ли приостановлено заполнение активного полнотекстового каталога.
состояние int Текущее состояние полнотекстового каталога. Один из следующих:

0 = инициализация

1 = готовность

2 = пауза

3 = временная ошибка

4 = необходимость повторного подключения

5 = выключение

6 = приостановлен для резервного копирования

7 = резервное копирование осуществлено через каталог

8 = каталог поврежден
status_description nvarchar(120) Описание текущего состояния активного полнотекстового каталога.
previous_status int Предыдущее состояние полнотекстового каталога. Один из следующих:

0 = инициализация

1 = готовность

2 = пауза

3 = временная ошибка

4 = необходимость повторного подключения

5 = выключение

6 = приостановлен для резервного копирования

7 = резервное копирование осуществлено через каталог

8 = каталог поврежден
previous_status_description nvarchar(120) Описание предыдущего состояния активного полнотекстового каталога.
worker_count int Количество текущих потоков, работающих в этом полнотекстовом каталоге.
active_fts_index_count int Количество полнотекстовых индексов, заполняемых в настоящий момент.
auto_population_count int Количество таблиц, в которых происходит автозаполнение для этого полнотекстового каталога.
manual_population_count int Количество таблиц с выполняющимся заполнением вручную для этого полнотекстового каталога.
full_incremental_population_count int Количество таблиц с выполняющимся полным или добавочным заполнением для этого полнотекстового каталога.
row_count_in_thousands int Оценка числа строк (в тысячах) в полнотекстовых индексах этого полнотекстового каталога.
is_importing bit Указывает, выполняется ли в настоящее время импорт полнотекстового каталога:

1 = выполняется импорт каталога.

2 = импорт каталога не выполняется.

Замечания

Столбец is_importing появился в SQL Server 2008 (10.0.x).

Разрешения

На SQL Server и управляемом экземпляре SQL необходимо разрешение VIEW SERVER STATE.

Для целей службы База данных SQL Basic, S0 и S1, а также для баз данных в эластичных пулах, учетной записи администратора сервера, учетной записи администратора Microsoft Entra или членства в ##MS_ServerStateReader## роли сервера требуется. Для всех остальных целей обслуживания базы данных SQL требуется разрешение VIEW DATABASE STATE в базе данных или членство в роли сервера ##MS_ServerStateReader##.

Разрешения для SQL Server 2022 и более поздних версий

Требуется разрешение VIEW SERVER PERFORMANCE STATE на сервере.

Физические соединения

Схема физических соединений для sys.dm_fts_active_catalogs.

Кратности связей

С дт. По Отношение
dm_fts_active_catalogs.database_id dm_fts_index_population.database_id Взаимно-однозначный
dm_fts_active_catalogs.catalog_id dm_fts_index_population.catalog_id Взаимно-однозначный

Примеры

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

SELECT catalog.name, catalog.is_importing, catalog.auto_population_count,  
  OBJECT_NAME(population.table_id) AS table_name,  
  population.population_type_description, population.is_clustered_index_scan,  
  population.status_description, population.completion_type_description,  
  population.queued_population_type_description, population.start_time,  
  population.range_count   
FROM sys.dm_fts_active_catalogs catalog   
CROSS JOIN sys.dm_fts_index_population population   
WHERE catalog.database_id = population.database_id   
AND catalog.catalog_id = population.catalog_id   
AND catalog.database_id = (SELECT dbid FROM sys.sysdatabases WHERE name = DB_NAME());  
GO  

Следующие шаги

Полнотекстовый поиск и динамические административные представления и функции семантического поиска (Transact-SQL)