sys.dm_fts_active_catalogs (Transact-SQL)

返回在服务器上正在进行某些填充活动的全文目录的相关信息。

备注

以后的 Microsoft SQL Server 版本中将删除以下列:is_paused, previous_status、previous_status_description、row_count_in_thousands、status、status_description 和 worker_count。应避免在新的开发工作中使用这些列,并着手修改当前使用上述任意列的应用程序。

适用范围:SQL Server(SQL Server 2008 到当前版本)。

列名

数据类型

说明

database_id

int

包含活动全文目录的数据库的 ID。

catalog_id

int

活动的全文目录的 ID。

memory_address

varbinary(8)

为与此全文目录相关的填充活动所分配的内存缓冲区的地址。

name

nvarchar(128)

活动的全文目录的名称。

is_paused

bit

指示活动全文目录的填充是否已暂停。

status

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 中的新增列。

权限

要求对服务器拥有 VIEW SERVER STATE 权限。

物理联接

此动态管理视图的重要联接

关系基数

关系

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)

全文搜索和语义搜索动态管理视图和函数 (Transact-SQL)