Sign in with Microsoft
Sign in or create an account.
Hello,
Select a different account.
You have multiple accounts
Choose the account you want to sign in with.

Microsoft 發佈 Microsoft SQL Server 2008 修正成一個可下載的檔案。 因為修正程式是累加的,所以每個新發行版本本都包含舊版 SQL Server 2008 修正版本中包含的所有修復程式及所有安全性修正程式。

徵狀

症狀1當您在 Microsoft SQL Server 2008 或 Microsoft SQL Server 2008 R2 中針對大型全文索引執行人口填充時,您可能會在全文記錄檔中收到錯誤訊息。 記錄此錯誤訊息的次數,取決於批次大小減去1。 例如,在32位電腦上,批次大小是1000,因此錯誤記錄了999時間。 錯誤訊息如下所示:

錯誤 ' 0x8004cb04:記憶體中的單詞表已損毀。 這是因為篩選器、分詞系統或其他索引元件出現錯誤。 ' 在資料表或索引視圖 ' [smarsh] 中的全文索引填充期間發生。[dbo]。[ArchiveMsgs] "(資料表或索引視圖 ID" 160719625 ",資料庫 ID" 7 "),全字鍵值 ' 291484087」。 嘗試將它重新編制索引。

當您收到此錯誤訊息之後,您可能也會收到下列錯誤訊息,讓批次大小減1:

在資料表或索引視圖 ' [smarsh] 的全文索引填充期間,<日期> <時間> spid28s 錯誤 ' 0x80040e28」。[dbo]。[ArchiveMsgs] "(資料表或索引視圖 ID" 160719625 ",資料庫 ID" 7 "),全字鍵值 ' 199598211」。 嘗試將它重新編制索引。

當您收到此錯誤訊息之後,您可能也會收到下列錯誤訊息,讓批次大小減1:

<日期> <時間> spid26s 錯誤 "0x80043630:篩選埠監控程式程式 MSFTEFD 由於未知原因而超時。 這可能表示篩選器、分詞系統或通訊協定處理常式中的錯誤。在資料表或索引視圖 ' [smarsh] 中的全文索引填充期間發生。[dbo]。[ArchiveMsgs] "(資料表或索引視圖 ID" 160719625 ",資料庫 ID" 7 "),全字鍵值 ' 14304130」。 嘗試將它重新編制索引。

症狀2此外,您可能會發現 FDHOST 進程無法正常執行。 當您嘗試執行完整文字查詢或執行完整文字填充時,您會收到下列訊息回到用戶端。

對於全文查詢字串,Msg 30053、Level 16、State 102、分行1Word 中斷超時。 如果分詞系統需要花很長的時間來處理完整文字查詢字串,或是在伺服器上執行大量的查詢,可能會發生這種情況。 在較淺的載入中嘗試再次執行查詢。

當您檢查此目錄的 SQLFT * 記錄時,您會注意到此錯誤訊息:

在資料表或索引視圖 ' [DBNAME] 的全文索引填充期間,發生「0x80004005」錯誤。[dbo]。[TABLENAMe] ' (資料表或索引視圖 ID "1204001724",資料庫 ID "5"),全文本鍵值 "4"。 嘗試將它重新編制索引。

當您檢查 SQL 錯誤日誌時,您會注意到此錯誤訊息:

錯誤:30089,嚴重度:17,狀態:1。全文篩選守護程式 host (FDHost)進程已異常停止。 如果未正確設定或無法正常使用的語言元件(例如分詞器、詞幹分析器或篩選器)在全文索引或查詢處理期間導致無法恢復的錯誤,可能會發生這種情況。 程式將會自動重新開機。

原因

發生這個問題的原因是 Sqlservr 處理常式與 Fdhost 程式之間通訊中的錯誤。 當批次從 Sqlservr 進程傳送到 Fdhost 程式時,有時會將輸出共用記憶體(OSM),這是從 Sqlservr 到 Fdhost 的共用記憶體,沒有足夠的空間來符合檔的下一欄。 發生這種情況時,Sqlservr 程式會傳送訊息來通知 Fdhost 處理常式,以處理 OSM 中的所有現有資料。 當 Fdhost 程式處理資料時,入站共用記憶體(ISM)是從 Fdhost 到 Sqlservr 的共用記憶體,可能會變滿。 在這種情況下,Fdhost 程式會將「快退」訊息傳送到 Sqlservr 程式。 此訊息要求 Sqlservr 程式從第一欄重新傳送最後一份檔。 不過,當 Sqlservr 進程開始再次傳送檔時,它會從欄2(而不是欄1)開始。 這會導致「症狀」一節中提到的錯誤訊息。

解決方案

累積更新資訊

SQL Server 2008 R2 Service Pack 2

此問題的修正程式是在累積更新3中第一次發行。如需有關如何取得適用于 SQL Server 2008 R2 Service Pack 2 之累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

2754552 SQL Server 2008 R2 Service Pack 2 的累積更新套件3 注意: 因為組建是累加的,所以每個新的修正程式版本都包含舊版 SQL Server 2008 R2 Service Pack 2 (修正版本)所包含的所有修復程式及所有安全修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2730301 在發行 SQL Server 2008 R2 Service Pack 2 之後發行的 SQL Server 2008 R2 組建

SQL Server 2008

此問題的修正程式是在 SQL Server 2008 發行版本本的累積更新4中第一次發行。如需如何取得此 SQL Server 2008 累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

963036 SQL Server 2008 的累積更新套件4注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2008 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

956909 在發行 SQL Server 2008 之後發行的 SQL Server 2008 組建

SQL Server 2008 Service Pack 1

此問題的修正程式是在 SQL Server 2008 Service Pack 1 的累積更新1中第一次發行。如需如何取得此 SQL Server 2008 累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

969099 SQL Server 2008 的累積更新套件 1 Service Pack 1注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2008 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

970365 在發行 SQL Server 2008 Service Pack 1 之後發行的 SQL Server 2008 組建

因應措施

若要解決此問題,請增加 ISM 大小。 若要這樣做,請使用 sp_fulltext_service 的預存程序來設定 ISM_Size 變數。若要顯示目前的值:sp_fulltext_service "ism_size" 將值變更為16:sp_fulltext_service ' ism_size ",@value = 16注意: 您必須重新開機 SQL Server 服務,此變更才會生效。

狀態

Microsoft 已確認<適用於>一節中所列的 Microsoft 產品確實有上述問題。

其他相關資訊

這個問題不會防止完成填充。 全文索引的內建重試邏輯會繼續重試失敗的輸入,直到成功為止。 因此,您可以放心地忽略錯誤訊息。 已知的實際潛在負面影響可能會比平時完成所需的時間長,且完整文字記錄增長會隨著錯誤報表而大幅增加。來來源程式代碼中的 retry 邏輯會引起最終成功的填充,而不會損毀至索引,儘管錯誤訊息指出可能已損壞。 如果您執行上述 #2 的症狀 ,則全文搜尋查詢或人口將無法運作,因為 FDHOST 元件不是使用正確的狀態來執行,您將需要套用此累加更新。

有關 SQL Server 2008 累計更新套件4的詳細資訊

如需有關哪些檔案已變更的詳細資訊,以及適用于任何先決條件的資訊,如需套用累積更新套件(包含此 Microsoft 知識庫文章中所述的修復程式),請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

963036 SQL Server 2008 的累積更新套件4

關於 SQL Server 2008 Service Pack 1 的累積更新套件1的詳細資訊

如需有關哪些檔案已變更的詳細資訊,以及適用于任何先決條件的資訊,如需套用累積更新套件(包含此 Microsoft 知識庫文章中所述的修復程式),請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

969099 SQL Server 2008 的累積更新套件 1 Service Pack 1

參考

如需在發行 SQL Server 2008 之後可用之組建清單的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

956909 在發行 SQL Server 2008 之後發行的 SQL Server 2008 組建如需有關 SQL Server 的增量服務模型的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

935897 您可以從 SQL Server 團隊取得增量服務模型,以提供已報告問題的修補程式如需 SQL Server 更新命名架構的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

822499 Microsoft SQL Server 軟體更新套件的新命名架構如需軟體更新術語的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

824684 描述 Microsoft 軟體更新所使用的標準術語說明

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?
By pressing submit, your feedback will be used to improve Microsoft products and services. Your IT admin will be able to collect this data. Privacy Statement.

Thank you for your feedback!

×