Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Applies to:
SQL Server 2025 (17.x)
SQL Server 2025 (17.x) installs new word breakers and filters, replacing all the previous versions of these components. Binaries installed with SQL Server 2025 (17.x) are called version 2, and binaries installed with SQL Server 2022 (16.x) and earlier versions are called version 1. This article describes how to switch between version 2 and version 1 components.
Switch from version 2 to version 1 component
Note
Use the default version 2 word breakers and filters installed with SQL Server 2025 (17.x). They're enhanced, more secure, and compliant with security scans.
The default database scoped configuration for full-text indexes is version 2. Change it to version 1.
ALTER DATABASE SCOPED CONFIGURATION SET FULLTEXT_INDEX_VERSION = 1;
Legacy version 1 word breakers and filters are removed from SQL Server 2025 (17.x). You must copy these binaries from SQL Server 2022 (16.x) or previous instance's C:\Program Files\Microsoft SQL Server\MSSQL16.<instance-name>\MSSQL\Binn directory.
For existing indexes, verify the version by using the sys.fulltext_indexes catalog view. If the index is already version 1, you don't need to rebuild it. For a version 2 index, rebuild the catalog to switch back to version 1.
Switch from version 1 to version 2 component
For instances upgraded from SQL Server 2022 (16.x) to SQL Server 2025 (17.x), you must rebuild full-text indexes with version 1 components using version 2 components.
ALTER FULLTEXT CATALOG [FtCatalog] REBUILD;
Note
A catalog rebuild operation rebuilds all full-text indexes. If you want to control the order of the index build, or reduce resource requirements, drop and recreate the full-text indexes individually.
Change the word breaker used for US English and UK English
Applies to: SQL Server 2022 (16.x) and earlier versions, and Azure SQL Database
SQL Server 2012 (11.x) installs an updated version of the word breaker and stemmer for the English language, replacing the previous version of these components. For information about the changed behavior of the updated components, see Behavior Changes to Full-Text Search.
This article describes how to switch from the updated version of these components to the previous version, or to switch back from the previous version to the updated version. For cluster installations, make these changes on all nodes.
Some previous versions of SQL Server used different word breakers represented by different CLSIDs for US English (LCID 1033) and UK English (LCID 2057). In SQL Server 2012 (11.x) and later versions, both locale identifiers (LCIDs) use the same components with the same CLSIDs, as shown in the following table:
| LCID | Word breaker installed by previous versions (version 12.0.6828.0) | Stemmer installed by previous versions | Word breaker installed with SQL Server 2012 and higher versions (version 14.0.4999.1038) | Stemmer installed with SQL Server 2012 and higher versions |
|---|---|---|---|---|
1033 (US English) |
188d6cc5-cb03-4c01-912e-47d21295d77e |
eeed4c20-7f1b-11ce-be57-00aa0051fe20 |
9faed859-0b30-4434-ae65-412e14a16fb8 |
e1e5ef84-c4a6-4e50-8188-99aef3de2659 |
2057 (UK English) |
173c97e2-aebe-437c-9445-01b237abf2f6 |
d99f7670-7f1a-11ce-be57-00aa0051fe20 |
9faed859-0b30-4434-ae65-412e14a16fb8 |
e1e5ef84-c4a6-4e50-8188-99aef3de2659 |
The components described in this article are DLL files that are installed in the MSSQL\Binn folder for the SQL Server instance. The full path is typically C:\Program Files\Microsoft SQL Server\<instance>\MSSQL\Binn.
For more information about word breakers and stemmers, see Configure and manage word breakers and stemmers for search (SQL Server).
Switch from the current English word breaker to the previous English word breakers
This example uses MSSQL17.MSSQLSERVER for the <InstanceRoot> value, which is the default instance for SQL Server 2025 (17.x). Adjust this value to match your environment.
The following commands add or update keys in the Windows registry, to set the COM ClassIDs for the previous US English word breaker and stemmer interfaces for LCID 1033 (enu).
Run these commands from an elevated command prompt:
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSearch\CLSID\{188D6CC5-CB03-4C01-912E-47D21295D77E}" /ve /t REG_SZ /d "langwrbk.dll"
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSearch\CLSID\{EEED4C20-7F1B-11CE-BE57-00AA0051FE20}" /ve /t REG_SZ /d "infosoft.dll"
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSearch\Language\enu" /v "WBreakerClass" /t REG_SZ /d "{188D6CC5-CB03-4C01-912E-47D21295D77E}" /f
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSearch\Language\enu" /v "StemmerClass" /t REG_SZ /d "{EEED4C20-7F1B-11CE-BE57-00AA0051FE20}" /f
Restart SQL Server to use these word breaker settings.
Switch back from the previous English word breakers to the current English word breaker
This example uses MSSQL17.MSSQLSERVER for the <InstanceRoot> value, which is the default instance for SQL Server 2025 (17.x). Adjust this value to match your environment.
The following commands add or update keys in the Windows registry, to set the COM ClassIDs back from US English for LCID 1033 (enu).
Run these commands from an elevated command prompt:
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSearch\CLSID\{9FAED859-0B30-4434-AE65-412E14A16FB8}" /ve /t REG_SZ /d "MsWb7.dll"
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSearch\CLSID\{E1E5EF84-C4A6-4E50-8188-99AEF3DE2659}" /ve /t REG_SZ /d "MsWb7.dll"
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSearch\Language\enu" /v "WBreakerClass" /t REG_SZ /d "{9FAED859-0B30-4434-AE65-412E14A16FB8}" /f
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSearch\Language\enu" /v "StemmerClass" /t REG_SZ /d "{E1E5EF84-C4A6-4E50-8188-99AEF3DE2659}" /f
Restart SQL Server to use these word breaker settings.