Sql server SQL Server FTI:如何检查表状态?
在SQL Server全文索引方案中,我想知道表是否处于Sql server SQL Server FTI:如何检查表状态?,sql-server,full-text-search,Sql Server,Full Text Search,在SQL Server全文索引方案中,我想知道表是否处于 start\u chage\u tracking模式 更新索引模式 start\u change\u tracking和start\u background\u updateindex模式 问题是,我将我的表设置为“后台更新索引”,然后告诉它“开始更改跟踪”,但几个月后,它似乎没有跟踪更改 如何查看“后台更新索引”和“更改跟踪”标志的状态 示例: sp_fulltext_table @tabname='DiaryEntry', @ac
模式start\u chage\u tracking
模式更新索引
和start\u change\u tracking
模式start\u background\u updateindex
sp_fulltext_table @tabname='DiaryEntry', @action='start_background_updateindex'
Server: Msg 15633, Level 16, State 1, Procedure sp_fulltext_table, Line 364
Full-text auto propagation is currently enabled for table 'DiaryEntry'.
sp_fulltext_table @tabname='Ticket', @action='start_background_updateindex'
Server: Msg 15633, Level 16, State 1, Procedure sp_fulltext_table, Line 364
Full-text auto propagation is currently enabled for table 'Ticket'.
显然,一个表有一个索引状态,我只想知道它显示我可以向用户(即我)显示它
其他可用的API:
EXECUTE sp_help_fulltext_tables
只返回目录中的表,不返回它们的状态
TABLE_OWNER TABLE_NAME FULLTEXT_KEY_INDEX_NAME FULLTEXT_KEY_COLID FULLTEXT_INDEX_ACTIVE FULLTEXT_CATALOG_NAME
=========== ========== ======================= ================== ===================== =====================
dbo DiaryEntry PK_DiaryEntry_GUID 1 1 FrontlineFTCatalog
dbo Ticket PK__TICKET_TicketGUID 1 1 FrontlineFTCatalog
我可以得到整个目录的PopulateStatus:
SELECT FULLTEXTCATALOGPROPERTY('MyCatalog', 'PopulateStatus') AS PopulateStatus
它返回目录的状态:
0 = Idle
1 = Full population in progress
2 = Paused
3 = Throttled
4 = Recovering
5 = Shutdown
6 = Incremental population in progress
7 = Building index
8 = Disk is full. Paused.
9 = Change tracking
但不是为了一张桌子
SQL Server 2000 SP4
SELECT @@version
Microsoft SQL Server 2000 - 8.00.194 (Intel X86)
Aug 6 2000 00:57:48
Copyright (c) 1988-2000 Microsoft Corporation
Standard Edition on Windows NT 5.0 (Build 2195: Service Pack 4)
不管有什么bug,我都希望创建一个用户界面,以便轻松查看其状态。您正在运行哪个版本的SQL/Service pack;这曾经是SQL2000中的一个bug 按此顺序执行sp_fulltext_表以临时修复问题。(磁盘空间不足可能是原因)
- 停止\u更改\u跟踪
- 开始更改跟踪
- 停止\u后台\u更新索引
- 启动\u后台\u更新索引
OK要监视状态,您需要在MSSQL提示上查看这个非常方便的资源;我想那里的剧本会给你你想要的东西。基督。我有一个完整的格式很好的答案。当IE崩溃时,我正在滚动以点击save 简短版本: OBJECTPROPERTY
- TableFullTextPopulatus
- TableFullTextBackgroundUpdateIndexOn
- TableFullTextCatalogId
- TableFullTextChangeTrackingOn
- TableFullTextKeyColumn
- TableHasActiveFulltextIndex
SELECT
--indicates whether full-text change-tracking is enabled on the table (0, 1)
OBJECTPROPERTY(OBJECT_ID('DiaryEntry'), 'TableFullTextChangeTrackingOn') AS TableFullTextChangeTrackingOn,
--indicate the population status of a full-text table (0=No population, 1=Full Population, 2=Incremental Population)
OBJECTPROPERTY(OBJECT_ID('DiaryEntry'), 'TableFullTextPopulateStatus') AS TableFullTextPopulateStatus,
--indicates whether a table has full-text background update indexing (0, 1)
OBJECTPROPERTY(OBJECT_ID('DiaryEntry'), 'TableFullTextBackgroundUpdateIndexOn') AS TableFullTextBackgroundUpdateIndexOn,
-- provides the full-text catalog ID in which the full-text index data for the table resides (0=table is not indexed)
OBJECTPROPERTY(OBJECT_ID('DiaryEntry'), 'TableFullTextCatalogId') AS TableFullTextCatalogId,
--provides the column ID of the full-text unique key column (0=table is not indexed)
OBJECTPROPERTY(OBJECT_ID('DiaryEntry'), 'TableFullTextKeyColumn') AS TableFullTextKeyColumn,
--indicates whether a table has an active full-text index (0, 1)
OBJECTPROPERTY(OBJECT_ID('DiaryEntry'), 'TableHasActiveFulltextIndex') AS TableHasActiveFulltextIndex
您是否尝试过sql提示链接?如果启用或禁用目录更改跟踪选项“填充状态行数全文搜索计数”总行数和全文搜索计数百分比之间的差异已完成全文搜索位置/路径可能是您的问题,则脚本将获取数据库表名称下的所有目录名称;但这不会告诉你它没有索引数据;只有它应该如何索引数据。