Install SQL Server Full-Text Search on Linux

Applies to: SQL Server - Linux

The following steps install Full-Text Search (mssql-server-fts) on Linux. Full-Text Search enables you to run full-text queries against character-based data in SQL Server tables. For known issues for this release, see the Release notes for SQL Server 2022 on Linux.

Note

Before installing SQL Server Full-Text Search, first install SQL Server. This configures the keys and repositories that you use when installing the mssql-server-fts package.

Install SQL Server Full-Text Search for your platform:

Use the following commands to install the mssql-server-fts on Red Hat Enterprise Linux.

sudo yum install -y mssql-server-fts

If you already have mssql-server-fts installed, you can update to the latest version with the following commands:

sudo yum check-update
sudo yum update mssql-server-fts

If you need an offline installation, locate the Full-text Search package download in the Release notes for SQL Server 2022 on Linux. Then use the same offline installation steps described in the article Install SQL Server.

Supported languages

Full-Text Search uses word breakers that determine how to identify individual words based on language. You can get a list of registered word breakers by querying the sys.fulltext_languages catalog view. Word breakers for the following languages are installed with SQL Server:

Language Language ID
Neutral 0
Arabic 1025
Bengali (India) 1093
Bokmål 1044
Portuguese (Brazil) 1046
British English 2057
Bulgarian 1026
Catalan 1027
Chinese (Hong Kong SAR, PRC) 3076
Chinese (Macao SAR) 5124
Chinese (Singapore) 4100
Croatian 1050
Czech 1029
Danish 1030
Dutch 1043
English 1033
French 1036
German 1031
Greek 1032
Gujarati 1095
Hebrew 1037
Hindi 1081
Icelandic 1039
Indonesian 1057
Italian 1040
Japanese 1041
Kannada 1099
Korean 1042
Latvian 1062
Lithuanian 1063
Malay - Malaysia 1086
Malayalam 1100
Marathi 1102
Polish 1045
Portuguese 2070
Punjabi 1094
Romanian 1048
Russian 1049
Serbian (Cyrillic) 3098
Serbian (Latin) 2074
Simplified Chinese 2052
Slovak 1051
Slovenian 1060
Spanish 3082
Swedish 1053
Tamil 1097
Telugu 1098
Thai 1054
Traditional Chinese 1028
Turkish 1055
Ukrainian 1058
Urdu 1056
Vietnamese 1066

Filters

Full-Text Search also works with text stored in binary files. But in this case, an installed filter is required to process the file. For more information about filters, see Configure and Manage Filters for Search.

You can see a list of installed filters by calling sp_help_fulltext_system_components 'filter'. For SQL Server, the following filters are installed:

Component Name Class ID Version
.a C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.ans C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.asc C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.ascx E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.asm C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.asp E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.aspx E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.asx C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.bas C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.bat C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.bcp C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.c C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.cc C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.cls C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.cmd C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.cpp C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.cs C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.csa C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.css E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.csv C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.cxx C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.dbs C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.def C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.dic C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.dos C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.dsp C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.dsw C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.ext C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.faq C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.fky C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.h C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.hhc E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.hpp C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.hta E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.htm E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.html E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.htt E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.htw E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.htx E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.hxx C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.i C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.ibq C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.ics C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.idl C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.idq C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.inc C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.inf C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.ini C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.inl C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.inx C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.jav C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.java C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.js C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.kci C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.lgn C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.log C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.lst C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.m3u C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.mak C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.mk C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.odc E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.odh C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.odl C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.pkgdef C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.pkgundef C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.pl C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.prc C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.rc C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.rc2 C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.rct C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.reg C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.rgs C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.rtf C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.rul C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.s C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.scc C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.shtm E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.shtml E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.snippet C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.sol C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.sor E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.srf E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.stm E0CA5340-4534-11CF-B952-00AA0051FE20 12.0.6828.0
.tab C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.tdl C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.tlh C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.tli C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.trg C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.txt C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.udf C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.udt C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.url C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.usr C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.vbs C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.viw C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.vsct C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.vsixlangpack C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.vsixmanifest C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.vspscc C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.vsscc C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.vssscc C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.wri C1243CA0-BF96-11CD-B579-08002B30BFEB 12.0.6828.0
.wtx C7310720-AC80-11D1-8DF3-00C04FB6EF4F 12.0.6828.0
.xml 41B9BE05-B3AF-460C-BF0B-2CDD44A093B1 12.0.9735.0

Semantic Search builds on the Full-Text Search feature to extract and index statistically relevant key phrases. This feature enables you to query the meaning within documents in your database. It also helps to identify documents that are similar.

To use Semantic Search, you must first restore the Semantic Language Statistics database to your machine.

  1. Use a tool, such as sqlcmd, to run the following Transact-SQL command on your Linux SQL Server instance. This command restores the Language Statistics database.

    RESTORE DATABASE [semanticsdb]
    FROM DISK = N'/opt/mssql/misc/semanticsdb.bak'
    WITH FILE = 1,
        MOVE N'semanticsdb' TO N'/var/opt/mssql/data/semanticsDB.mdf',
        MOVE N'semanticsdb_log' TO N'/var/opt/mssql/data/semanticsdb_log.ldf', 
        NOUNLOAD, STATS = 5;
    GO
    

    Note

    If necessary, update the paths in the previous RESTORE command to adjust for your configuration.

  2. Run the following Transact-SQL command to register the semantic language statistics database.

    EXECUTE sp_fulltext_semantic_register_language_statistics_db @dbname = N'semanticsdb';
    GO