[英]full-text index not updating (SQL 2005)
我有一張表在上周完成了全文搜索工作。 有超過七百萬條記錄,我看到它在全文索引中有超過七百萬條記錄。
但是,搜索結果中顯示的不是一周之久。 我可以在表的全文索引屬性中看到,“待定”條目的數量越來越多(可能是今天的3萬個),可能與未添加到索引中的內容相對應。
我檢查的第一件事是索引是否已啟用。 它不是,所以我啟用它,啟動“ALTER FULLTEXT INDEX”作業的進程開始阻止服務器上的所有其他請求,所以我殺了它。
我已確認全文索引服務正在運行並自動啟動。 我還確認它會自動檢查更改,雖然將其從“自動”轉換為“手動”到“關閉”似乎沒有做太多事情,除了重置排隊結果的數量。 (將其轉回“自動”會將數字重置為30,000。)
我試圖重建全文索引,但對於“Full”和“Incremental”,它會拋出一條關於“已經存在索引”的消息。 “更新”說“命令已成功完成”,但似乎沒有任何效果。
我今天做的最后一件事是:
這開始了“ALTER FULLTEXT INDEX”工作,再次阻止了所有正在進行實際工作的流程。
我們試圖在選項A之間做出決定:擦除現有的FTI並從頭開始重建,選項B:執行禁用/重建/重新啟用技巧,這似乎開始有用。 (我們會做B然后A,但是我們預計會有一兩個小時的停機時間,並且A過去也有效。)
有沒有更快的方法來做這些? 還有任何想法我是如何在這種情況下首先得到的?
這是一個有趣的問題。 我想你是因為它被禁用了。 我可能已經找到了一種方法可以讓你擺脫它而不會阻擋其他一切。
首先,要知道此行為是SQL Server 2005 SP1之前的錯誤,請確保您擁有SP1。
如果您已經這樣做,請嘗試:
ALTER FULLTEXT INDEX on tablename SET CHANGE_TRACKING MANUAL
ALTER FULLTEXT INDEX on tablename START UPDATE POPULATION
如果有效,那么我認為你和這個人遇到了同樣的問題。 他只是每小時左右開始工作。 當然,這是一個臨時解決方案,但它會給你時間,直到你可以實際重建索引。
剛想到的其他東西,你試過REORGANIZEing索引嗎? 我知道它沒有阻止,但我不確定它是否會導致刷新以這種方式發生以防止阻塞。
只是為了澄清你已經檢查過創建索引的分區是否有空格。 我們在DEV環境中遇到了這個問題,全文索引不會更新。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.