重建包含带有存储PDF的表的目录时,我收到以下错误(它适用于Word文档)。
警告:在全文索引期间未找到适当的过滤器 表或索引视图的人口'[测试]。[dbo]。[表1]'(表格 或索引视图ID'2105058535',数据库ID'6'),全文键值 '911'。该行的某些列未编入索引。
我按照Adobe的安装程序运行了以下命令:
EXEC sp_fulltext_service @action='load_os_resources', @value=1; -- update os resources
EXEC sp_fulltext_service 'verify_signature', 0 -- don't verify signatures
EXEC sp_fulltext_service 'update_languages'; -- update language list
EXEC sp_fulltext_service 'restart_all_fdhosts'; -- restart daemon
EXEC sp_help_fulltext_system_components 'filter'; -- view active filters
最后一个确实返回正确的过滤路径:
filter .pdf E8978DA6-047F-4E3D-9C78-CDBE46041603 C:\Program Files\Adobe\Adobe PDF iFilter 11 for 64-bit platforms\bin\PDFFilter.dll 11.0.1.36 Adobe Systems, Inc.
我已将路径添加到C:\Program Files\Adobe\Adobe PDF iFilter 11 for 64-bit platforms\bin\
并验证其有效。
我重新启动了服务(甚至重启了机器)。我还通过运行Windows SDK附带的filtdump.exe来验证过滤器是否在SQL Server 2008 R2的外部工作。
此外,我已重新配置sql server服务,因此它们使用管理员帐户运行(如果问题与权限相关)。
最后,我尝试了几台机器(一些运行SP1)和相同的结果。注册DLL没有问题... SQL Server根本不调用过滤器。请注意,我已尝试将文档上传到具有“未知”扩展名的同一个表格(例如“.xyz”),我得到相同的结果......就像“.pdf”是未注册的扩展名(但是它是)。
有什么建议吗?
答案 0 :(得分:-1)
在尝试解决此问题时,我遇到了各种奇怪的问题。解决方案是授予adobe iFilter dll bin目录对SQL Server数据库引擎服务帐户的完全访问权限。
我的测试用Adobe 9.0完成。我们尝试了第一个Adobe Pdf 11过滤器没有运气,重新安装Adobe Pdf 9,没有运气,重新安装SQL Server 2008r2 + sp2 + Adobe Pdf没有运气。
我重建了目录,而不是工作。最后,当你评论SQL Server没有调用Dll的可能性时,我怀疑存在访问权限问题。通过授予上述权限,它可以工作。
也许这会使Adobe PDF 11工作,但要注意纠正版本11的路径。