sys.dm_fts_active_catalogs (Transact-SQL)
適用於:SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體
傳回伺服器上有一些母體活動進行中之全文檢索目錄的資訊。
注意
未來 Microsoft 版本的 SQL Server 將會移除下列數據行:is_paused、previous_status、previous_status_description、row_count_in_thousands、狀態、status_description和worker_count。 請避免在新開發工作中使用這些數據行,並計劃修改目前使用其中任何一個數據行的應用程式。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
database_id | int | 包含使用中全文檢索目錄的資料庫標識碼。 |
catalog_id | int | 使用中全文檢索目錄的標識碼。 |
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 中引進的(10.0.x)。
權限
在 SQL Server 和 SQL 受控執行個體上,需要 VIEW SERVER STATE
權限。
在 SQL Database [Basic]、[S0] 和 [S1] 服務目標,以及彈性集區中的資料庫,需要伺服器管理員帳戶、伺服器管理員帳戶、Microsoft Entra 管理員帳戶或 ##MS_ServerStateReader##
伺服器角色的成員資格。 在所有其他 SQL Database 服務目標上,需要資料庫的 VIEW DATABASE STATE
權限或 ##MS_ServerStateReader##
伺服器角色的成員資格。
SQL Server 2022 及更新版本的權限
需要伺服器上的 VIEW SERVER PERFORMANCE 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