1

重建包含存储 PDF 表的目录时出现以下错误(它适用于 Word 文档)。

警告:在为表或索引视图“[Test].[dbo].[Table_1]”(表或索引视图 ID 为“2105058535”,数据库 ID 为“6”)进行全文索引填充期间未找到合适的过滤器,完整-文本键值“911”。该行的某些列未编入索引。

我按照 Adob​​e 的安装程序运行了以下命令:

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”是未注册的扩展名一样(但是它是)。

有什么建议吗?

4

1 回答 1

-1

在尝试解决此问题时,我遇到了各种奇怪的问题。解决方案是授予 adobe iFilter dll bin 目录对 SQL Server 数据库引擎服务帐户的完全访问权限。

我的测试是用 Adob​​e 9.0 完成的。我们尝试了第一个 Adob​​e Pdf 11 过滤器,但没有运气,重新安装 Adob​​e Pdf 9,没有运气,重新安装 SQL Server 2008r2 + sp2 + Adob​​e Pdf 没有运气。

我重建了目录,但不起作用。最后,当您评论 SQL Server 根本没有调用 Dll 的可能性时,我怀疑是访问权限问题。通过授予上述权限,它起作用了。

也许这会使 Adob​​e PDF 11 工作,但要注意更正版本 11 的路径。

于 2013-05-22T16:21:58.890 回答