今天執行SQL Server 2014的full-text search 查詢操作:select * from table where contains(summary, 'smith') 報出如下錯誤: Msg 30046, Level 16, State 1, Line 1SQL Server
今天執行SQL Server 2014的full-text search 查詢操作:select * from table where contains(summary, 'smith')
報出如下錯誤:
Msg 30046, Level 16, State 1, Line 1
SQL Server encountered error 0x8007042d while communicating with full-text filter daemon host (FDHost) process. Make sure that the FDHost process is running. To re-start the FDHost process, run the sp_fulltext_service 'restart_all_fdhosts' command or restart the SQL Server instance.
很好,哥哥後來解決了這個問題:
這個問題很可能是因為FTS (FullTextSearch Service) 停用造成的,但是也不是僅僅如此,往下看:
#1, 打開Services的面板,確定下麵的Service運行正常
SQL Full-text Filter Daemon Launcher (MSSQLSERVER)
#2,賬戶的檢查
但是,這裡我儘管將其成功運行,依舊存在上面的錯誤報告。經過更多的研究,發現有一個問題:我將SQL Server 運行在一個域賬戶下,而Fulltext search卻不是用的這個賬戶,可能是預設賬戶。
所以,我將域賬戶配置給這個Service, 並重新啟動。併在SQL Server里,運行 “ exec sp_fulltext_service 'restart_all_fdhosts' ”.
並重新構建fulltext search的全文索引,並直線檢索操作。 Bingo, 運行良好。