安装和配置语义搜索
适用于:SQL Server
说明统计语义搜索的必备组件以及如何安装或检查它们。
安装语义搜索
检查是否安装了语义搜索
查询 SERVERPROPERTY (Transact-SQL) 元数据函数的 IsFullTextInstalled 属性。
返回值 1 表示安装了全文搜索和语义搜索;返回值 0 表示未安装它们。
SELECT SERVERPROPERTY('IsFullTextInstalled');
GO
安装语义搜索
若要安装语义搜索,在 SQL Server 安装过程中,请在“要安装的功能”页上选择“全文和语义提取搜索”。
统计语义搜索依赖于全文搜索。 SQL Server 的这两个可选功能是一起安装的。
安装语义语言统计数据库
语义搜索具有一个称为语义语言统计数据库的附加外部依赖项。 此数据库包含语义搜索所需的统计语言模型。 单个语义语言统计数据库包含语义索引支持的所有语言的语言模型。
检查是否安装了语义语言统计数据库
查询目录视图 sys.fulltext_semantic_language_statistics_database (Transact-SQL)。
如果为该实例安装并注册了语义语言统计数据库,则查询结果将包含有关该数据库的单行信息。
SELECT * FROM sys.fulltext_semantic_language_statistics_database;
GO
安装、附加和注册语义语言统计数据库
SQL Server 安装程序不安装语义语言统计数据库。 若要将语义语言统计数据库设置为语义索引的必备组件,请执行以下操作:
1.安装语义语言统计数据库。
在 SQL Server 安装介质上找到语义语言统计数据库,或者从 Web 上下载它。
在 SQL Server 安装介质上找到名为 SemanticLanguageDatabase.msi 的 Windows 安装程序包。
从 Microsoft 下载中心的 Microsoft SQL Server 2016 语义语言统计信息页上下载安装程序包。
运行 SemanticLanguageDatabase.msi Windows 安装程序包,以提取数据库和日志文件。
也可以选择更改目标目录。 默认情况下,安装程序将文件提取到 Program Files 文件夹中名为 Microsoft Semantic Language Database 的文件夹。 MSI 文件包含压缩的数据库文件和日志文件。
将提取的数据库文件和日志文件移到文件系统中的合适位置。
如果将文件放入默认位置,则不可能为另一个 SQL Server 实例提取数据库的另一个副本。
重要
提取语义语言统计数据库时,向文件系统默认位置中的数据库文件和日志文件分配受限权限。 因此,如果将文件放入默认位置,您可能没有附加该数据库的权限。 如果在尝试附加数据库时引发了错误,请删除这些文件,或检查并根据需要修复文件系统权限。
2.附加语义语言统计数据库。
使用 Management Studio 或通过 FOR ATTACH 语法调用 CREATE DATABASE (SQL Server Transact-SQL) 将数据库附加到 SQL Server 实例。 有关详细信息,请参阅数据库分离和附加 (SQL Server)。
默认情况下,该数据库的名称为 semanticsdb。 也可以选择在附加数据库时为数据库提供其他名称。 当使用后续步骤注册数据库时,必须提供此名称。
CREATE DATABASE semanticsdb
ON ( FILENAME = 'C:\Microsoft Semantic Language Database\semanticsdb.mdf' )
LOG ON ( FILENAME = 'C:\Microsoft Semantic Language Database\semanticsdb_log.ldf' )
FOR ATTACH;
GO
此代码示例假定您将数据库从其默认位置移动到新位置。
3.注册语义语言统计数据库。
调用 sp_fulltext_semantic_register_language_statistics_db (Transact-SQL) 存储过程,并提供在附加数据库时向该数据库提供的名称。
EXEC sp_fulltext_semantic_register_language_statistics_db @dbname = N'semanticsdb';
GO
语义语言统计数据库的要求和限制
在一个 SQL Server 实例上只能附加和注册一个语义语言统计数据库。
单个计算机上的每个 SQL Server 实例都需要一个单独的语义语言统计数据库的物理副本。 对每个实例附加一个副本。
您不能分离注册的有效语义语言统计数据库,并将其替换为一个任意同名的数据库。 这样做将导致当前或未来的索引填充失败。
语义语言统计数据库是只读的。 您不能自定义此数据库。 如果您以任何方式更改数据库的内容,未来语义索引的结果将是不确定的。 若要恢复此数据的原始状态,您可以删除已更改的数据库,然后下载并附加未更改的数据库新副本。
可以分离或删除语义语言统计数据库。 如果存在任何对数据库具有读锁定的当前索引操作,则分离或删除操作将失败或超时。这与现有行为一致。 删除该数据库后,任何语义索引操作都将失败。
删除语义语言统计数据库
取消注册、分离和删除语义语言统计数据库
1. 取消注册语义语言统计数据库。
调用 sp_fulltext_semantic_unregister_language_statistics_db (Transact-SQL) 存储过程。 由于一个实例仅有一个语义语言统计数据库,因此您不必提供该数据库的名称。
EXEC sp_fulltext_semantic_unregister_language_statistics_db;
GO
2. 分离语义语言统计数据库。
调用 sp_detach_db (Transact-SQL) 存储过程并提供该数据库的名称。
USE master;
GO
EXEC sp_detach_db @dbname = N'semanticsdb';
GO
3. 删除语义语言统计数据库。
撤消注册并分离该数据库后,您可以删除数据库文件。 不提供卸载程序,在“控制面板”的 “程序和功能” 中没有相应条目。
安装对较新文档类型的可选支持
为 Microsoft Office 和其他 Microsoft 文档类型安装最新筛选器
SQL Server 安装最新的 Microsoft word 断字符和词干分析器,但是不为 Microsoft Office 文档和其他 Microsoft 文档类型安装最新的筛选器。 要为使用最新版本的 Microsoft Office 和其他 Microsoft 应用程序创建的文档编制索引,必须安装这些筛选器。 若要下载最新的筛选器,请参阅 Microsoft Office 2010 Filter Packs。 (对于 Office 2013 或 Office 2016,不会显示为筛选器包版本。)