注释
在 SQL Server 2025(17.x)中,将断字符还原到以前的版本的过程已更改。 有关详细信息,请参阅 在 SQL Server 2025 中更改全文搜索分词器和过滤器。
SQL Server 为 Full-Text 搜索支持的所有语言安装并启用分词器和词形还原器的版本,但除韩语外。 本文说明如何在这些组件的此版本和以前的版本间切换。
本文不讨论以下语言:
| 语言 | Description |
|---|---|
| English | 若要恢复或复原英文组件,请参阅 在 SQL Server 2025 中更改 Full-Text 搜索断字符和筛选器。 |
| 丹麦语、波兰语和土耳其语 | 以前版本的 SQL Server 中包含的丹麦、波兰和土耳其的第三方分词器将替换为 Microsoft 组件。 |
| 捷克语和希腊语 | 捷克语和希腊语已有了新的断字符。 以前版本的 SQL Server Full-Text 搜索不包括对这两种语言的支持。 |
| 朝鲜语 | 此版本中不会升级韩语分词器和词干分析器。 |
有关断字符和词干分析器的一般信息,请参阅配置和管理用于搜索的断字符和词干分析器(SQL Server)。
恢复和还原断字符和词干分析器概述
还原和恢复断字符和词干分析器的说明取决于语言。 下表汇总了可能需要的三组操作,以便还原到组件的先前版本。
注意
错误地编辑注册表可能会严重损坏系统。 更改注册表项之前,建议您备份计算机中的所有重要数据。
| 当前文件 | 以前的文件 | 受影响语言的数目 | 针对文件的操作 | 针对注册表项的操作 |
|---|---|---|---|---|
NaturalLanguage6.dll |
NaturalLanguage6.dll |
34 | 获取并安装 NaturalLanguage6.dll 的旧版本,覆盖当前版本。 |
无需采取措施。 此版本的注册表项和值未更改。 |
| (其他文件名) | NaturalLanguage6.dll |
5 | 获取并安装NaturalLanguage6.dll的以前版本,以覆盖当前版本。 |
更改一组注册表项以便指定组件的以前版本。 |
| (其他文件名) | (其他文件名) | 6 | 无需采取措施。 SQL Server 安装程序将当前版本和以前版本的组件 Binn 复制到该文件夹。 |
更改一组注册表项以便指定组件的以前版本。 |
警告
如果将文件的 NaturalLanguage6.dll 当前版本替换为其他版本,则使用此文件的所有语言的行为将发生更改。
本文中所述的文件是在 SQL Server 实例的 MSSQL\Binn 文件夹中安装的 DLL 文件。 完整路径通常是以下路径:
C:\Program Files\Microsoft SQL Server\<instance>\MSSQL\Binn
当前和以前的断字符的文件名均为 NaturalLanguage6.dll 的语言
对于下表中的语言,当前和之前的分词器文件名均为 NaturalLanguage6.dll。 若要恢复或还原这些组件,必须用同一文件的不同版本覆盖 NaturalLanguage6.dll。 无需更改任何注册表项,因为此版本的注册表项未更改。
警告
如果将文件的 NaturalLanguage6.dll 当前版本替换为其他版本,则使用此文件的所有语言的行为将发生更改。
受影响的语言列表
| 语言 | 注册表中使用的缩写 | 区域设置标识符 (LCID) |
|---|---|---|
| 孟加拉语 | ben |
1093 |
| 保加利亚语 | bgr |
1026 |
| 加泰罗尼亚语 | cat |
1027 |
| 西班牙语 | esn |
3082 |
| 法语 | fra |
1036 |
| 古吉拉特语 | guj |
1095 |
| 希伯来语 | heb |
1037 |
| 印地语 | hin |
1081 |
| 克罗地亚语 | hrv |
1050 |
| 印度尼西亚语 | ind |
1057 |
| 冰岛语 | isl |
1039 |
| 意大利语 | ita |
1040 |
| 卡纳达语 | kan |
1099 |
| 立陶宛语 | lth |
1063 |
| 拉脱维亚语 | lvi |
1062 |
| 马拉雅拉姆语 | mal |
1100 |
| 马拉地语 | mar |
1102 |
| 马来语 | msl |
1086 |
| 中立 | Neutral |
0000 |
| 书面挪威语 | nor |
1044 |
| 旁遮普语 | pan |
1094 |
| 葡萄牙语(巴西) | ptb |
1046 |
| 葡萄牙语 | ptg |
2070 |
| 罗马尼亚语 | rom |
1048 |
| 斯洛伐克语 | sky |
1051 |
| 斯洛文尼亚语 | slv |
1060 |
| 塞尔维亚语 - 西里尔文 | srb |
3098 |
| 塞尔维亚语 - 拉丁语 | srl |
2074 |
| 瑞典语 | sve |
1053 |
| 泰米尔语 | tam |
1097 |
| 泰卢固语 | tel |
1098 |
| 乌克兰语 | ukr |
1058 |
| 乌尔都语 | urd |
1056 |
| 越南语 | vit |
1066 |
前面的表在缩写列上按字母顺序排序。
转到
Binn前面所述的文件夹。将 SQL Server 版本
NaturalLanguage6.dll备份到另一个位置。将 SQL Server 2008 R2 (10.50.x) 或 SQL Server 2008 (10.0.x) 实例的
NaturalLanguage6.dll从Binn文件夹复制到 SQL Server 实例的Binn文件夹中。警告
此更改会影响当前版本和以前版本中使用
NaturalLanguage6.dll的所有语言。请重新启动 SQL Server。
与文件名为 NaturalLanguage6.dll 的断字程序相关的语言
对于下表中的语言,以前的断字符的文件名不同于新版本的文件名。 以前的文件名为 NaturalLanguage6.dll. 若要还原到以前的版本,必须使用同一文件的早期版本 NaturalLanguage6.dll 覆盖当前版本。 还必须更改一组注册表项,以指定组件的以前版本或当前版本。
警告
如果将文件的 NaturalLanguage6.dll 当前版本替换为其他版本,则使用此文件的所有语言的行为将发生更改。
受影响的语言列表
| 语言 | 缩写 用于 注册表 |
LCID |
|---|---|---|
| 阿拉伯语 | ara |
1025 |
| 德语 | deu |
1031 |
| 日语 | jpn |
1041 |
| 荷兰语 | nld |
1043 |
| 俄语 | rus |
1049 |
前面的表在缩写列上按字母顺序排序。
将以下说明与 用于恢复和还原断字符和词干分析器的文件名和注册表值部分中的值列表一起使用。
转到
Binn前面所述的文件夹。请勿从
Binn文件夹中删除当前版本的组件的文件。将 SQL Server 版本
NaturalLanguage6.dll备份到另一个位置。将
NaturalLanguage6.dll中 SQL Server 2008 R2(10.50.x)或 SQL Server 2008(10.0.x)的一个实例的Binn文件夹中的以前版本复制到新的 SQL Server 实例的Binn文件夹中。警告
此更改会影响当前版本和以前版本中使用
NaturalLanguage6.dll的所有语言。在注册表中,转到以下节点:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceRoot>\MSSearch\CLSID使用以下步骤添加 COM ClassID 的新键,用于所选语言的以前的断字符和词干分析器接口:
添加值来自以前的断字符的表的新键。
将该键值的(默认)数据更新为来自该表的以前的断字符的文件名。
如果所选语言使用词干分析器,请为上一个词干分析器添加一个新键,其中包含表中的值。
如果所选语言使用词干分析器,请将该键值的 (Default) 数据更新为表中上一个词干分析器的文件名称。
在注册表中,转到以下节点:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceRoot>\MSSearch\Language\<language_key><language_key>表示注册表中使用的语言的缩写;例如,fra对于法语和esn西班牙语。将
WBreakerClass键值更新为分词器表中的当前值。如果所选语言使用词干分析器,请将
StemmerClass键值更新为当前词干分析器表中的值。请重新启动 SQL Server。
用于恢复和还原断字符和词干分析器的文件名和注册表值
将文件名和注册表项的以下列表与前一节中的说明一起使用。 使用以前的值恢复到以前的版本,或者使用当前值还原组件的当前版本。
以下列表按字母顺序对每种语言使用的缩写进行排序。
阿拉伯语 (ara) - LCID 1025
| 组件 | 断字符 | 词干分析器 |
|---|---|---|
| 以前的 CLSID | 7efd3c7e-9e4b-4a93-9503-decd74c0ac6d |
483b0283-25db-4c92-9c15-a65925cb95ce |
| 以前的文件名 | NaturalLanguage6.dll |
NaturalLanguage6.dll |
| 当前的 CLSID | 04b37e30-c9a9-4a7d-8f20-792fc87ddf71 |
无 |
| 当前文件名 | MSWB7.dll |
无 |
德语 (deu) - LCID 1031
| 组件 | 断字符 | 词干分析器 |
|---|---|---|
| 以前的 CLSID | 45eaca36-dbe9-4e4a-a26d-5c201902346d |
65170ae4-0ad2-4fa5-b3ba-7cd73e2da825 |
| 以前的文件名 | NaturalLanguage6.dll |
NaturalLanguage6.dll |
| 当前的 CLSID | dfa00c33-bf19-482e-a791-3c785b0149b4 |
8a474d89-6e2f-419c-8dd5-9b50edc8c787 |
| 当前文件名 | MsWb7.dll |
MsWb7.dll |
日语 (jpn) - LCID 1041
| 组件 | 断字符 | 词干分析器 |
|---|---|---|
| 以前的 CLSID | e1e8f15e-8bec-45df-83bf-50ff84d0cab5 |
3d5df14f-649f-4cbc-853d-f18fede9cf5d |
| 以前的文件名 | NaturalLanguage6.dll |
NaturalLanguage6.dll |
| 当前的 CLSID | 04096682-6ece-4e9e-90c1-52d81f0422ed |
无 |
| 当前文件名 | MsWb70011.dll |
无 |
荷兰语 (nld) - LCID 1043
| 组件 | 断字符 | 词干分析器 |
|---|---|---|
| 以前的 CLSID | 2c9f6beb-c5b0-42b6-a5ee-84c24dc0d8ef |
f7a465ee-13fb-409a-b878-195b420433af |
| 以前的文件名 | NaturalLanguage6.dll |
NaturalLanguage6.dll |
| 当前的 CLSID | 69483c30-a9af-4552-8f84-a0796ad5285b |
cf923cb5-1187-43ab-b053-3e44bed65ffa |
| 当前文件名 | MsWb7.dll |
MsWb7.dll |
俄罗斯 (rus) - LCID 1049
| 组件 | 断字符 | 词干分析器 |
|---|---|---|
| 以前的 CLSID | 2cb6cda4-1c14-4392-a8ec-81eef1f2e079 |
e06a0ddd-e81a-4e93-8a8d-f386c3a1b670 |
| 以前的文件名 | NaturalLanguage6.dll |
NaturalLanguage6.dll |
| 当前的 CLSID | aaa3d3bd-6de7-4317-91a0-d25e7d3babc3 |
d42c8b70-adeb-4b81-a52f-c09f24f77dfa |
| 当前文件名 | MsWb7.dll |
MsWb7.dll |
当前或之前文件名不是 NaturalLanguage6.dll 的语言
对于下表中的语言,之前版本的断字符和词干分析器文件名与新版本的文件名不同。 上一个和当前文件名都不是 NaturalLanguage6.dll。 无需替换任何文件,因为 SQL Server 安装程序会将当前和以前版本的组件 Binn 复制到该文件夹中。 但是,必须更改一组注册表项,以指定组件的以前版本或当前版本。
受影响的语言列表
| 语言 | 注册表中使用的缩写 | LCID |
|---|---|---|
| 简体中文 | chs |
2052 |
| 繁体中文 | cht |
1028 |
| 泰语 | tha |
1054 |
| 繁体中文 | zh-hk |
3076 |
| 繁体中文 | zh-mo |
5124 |
| 简体中文 | zh-sg |
4100 |
前面的表在缩写列上按字母顺序排序。
将以下说明与 用于恢复和还原断字符和词干分析器的文件名和注册表值部分中的值列表一起使用。
请勿从
Binn文件夹中删除当前版本的组件的文件。在注册表中,转到以下节点:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceRoot>\MSSearch\CLSID使用以下步骤添加 COM ClassID 的新键,用于所选语言的以前的断字符和词干分析器接口:
添加值来自以前的断字符的表的新键。
将该键值的(默认)数据更新为来自该表的以前的断字符的文件名。
如果所选语言使用词干分析器,请为上一个词干分析器添加一个新键,其中包含表中的值。
如果所选语言使用词干分析器,请将该键值的 (Default) 数据更新为表中上一个词干分析器的文件名称。
在注册表中,转到以下节点:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceRoot>\MSSearch\Language\<language_key><language_key>表示注册表中使用的语言的缩写;例如,fra对于法语和esn西班牙语。将
WBreakerClass键值更新为分词器表中的当前值。如果所选语言使用词干分析器,请将
StemmerClass键值更新为与当前词干分析器对应的表中的值。请重新启动 SQL Server。
用于恢复和还原断字符和词干分析器的文件名和注册表值
将文件名和注册表项的以下列表与前一节中的说明一起使用。 使用以前的值恢复到以前的版本,或者使用当前值还原组件的当前版本。
以下列表按字母顺序对每种语言使用的缩写进行排序。
简体中文 (chs) - LCID 2052
| 组件 | 断字符 |
|---|---|
| 以前的 CLSID | 12ce94a0-defb-11d2-b31d-00600893a857 |
| 以前的文件名 | chsbrkr.dll |
| 当前的 CLSID | e0831c90-bab0-4ca5-b9bd-ea254b538dac |
| 当前文件名 | MsWb70804.dll |
繁体中文(cht) - LCID 1028
| 组件 | 断字符 |
|---|---|
| 以前的 CLSID | 1680e7c3-9430-4a51-9b82-1e7e7aee5258 |
| 以前的文件名 | chtbrkr.dll |
| 当前的 CLSID | e9b1df65-08f1-438b-8277-ef462b23a792 |
| 当前文件名 | MsWb70404.dll |
泰国 (tha) - LCID 1054
| 组件 | 断字符 | 词干分析器 |
|---|---|---|
| 以前的 CLSID | cca22cf4-59fe-11d1-bbff-00c04fb97fda |
cedc01c7-59fe-11d1-bbff-00c04fb97fda |
| 以前的文件名 | Thawbrkr.dll |
Thawbrkr.dll |
| 当前的 CLSID | f70c0935-6e9f-4ef1-9f06-7876536db900 |
无 |
| 当前文件名 | MsWb7001e.dll |
无 |
繁体中文(zh-hk) - LCID 3076
| 组件 | 断字符 |
|---|---|
| 以前的 CLSID | 1680e7c3-9430-4a51-9b82-1e7e7aee5258 |
| 以前的文件名 | chtbrkr.dll |
| 当前的 CLSID | e9b1df65-08f1-438b-8277-ef462b23a792 |
| 当前文件名 | MsWb70404.dll |
中国传统(zh-mo) - LCID 5124
| 组件 | 断字符 |
|---|---|
| 以前的 CLSID | 1680e7c3-9430-4a51-9b82-1e7e7aee5258 |
| 以前的文件名 | chtbrkr.dll |
| 当前的 CLSID | e9b1df65-08f1-438b-8277-ef462b23a792 |
| 当前文件名 | MsWb70404.dll |
简体中文(zh-sg)- LCID 4100
| 组件 | 断字符 |
|---|---|
| 以前的 CLSID | 12ce94a0-defb-11d2-b31d-00600893a857 |
| 以前的文件名 | chsbrkr.dll |
| 当前的 CLSID | e0831c90-bab0-4ca5-b9bd-ea254b538dac |
| 当前文件名 | MsWb70804.dll |