Установка полнотекстового поиска SQL Server в Linux

Область применения: SQL Server — Linux

Для установки полнотекстового поиска SQL Server (mssql-server-fts) в Linux необходимо выполнить приведенные далее действия. Полнотекстовый поиск позволяет выполнять полнотекстовые запросы к символьным данным в таблицах SQL Server. Известные проблемы с этим выпуском см. в заметках о выпуске SQL Server 2022 в Linux.

Примечание.

Перед установкой полнотекстового поиска SQL Server сначала установите SQL Server. Это позволит настроить ключи и репозитории, которые следует использовать при установке пакета mssql-server-fts.

Установите полнотекстовый поиск SQL Server для своей платформы:

Используйте следующую команду для установки mssql-server-fts в Red Hat Enterprise Linux.

sudo yum install -y mssql-server-fts

Если у вас уже есть mssql-server-fts, можно обновить пакет до последней версии, выполнив следующие команды:

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

Если вам нужна автономная установка, найдите скачиваемый пакет полнотекстового поиска в заметках о выпуске. Затем выполните действия по автономной установке, описанные в статье Установка SQL Server.

Поддерживаемые языки

В полнотекстовом поиске используются средства разбиения текста по словам, позволяющие определять отдельные слова на основе языка. Список зарегистрированных разбиений по словам можно получить, запрашивая sys.fulltext_languages представление каталога. С SQL Server устанавливаются средства разбиения текста по словам для указанных далее языков.

Язык Код языка
Нейтральные 0
Арабский 1025
Bengali (India) 1093
Букмол 1044
португальский (Бразилия) 1046
British English 2057
Болгарский 1026
Каталанский 1027
Китайский (Гонконг, КНР) 3076
Chinese (Macao SAR) 5124
Chinese (Singapore) 4100
Хорватский 1050
чешский 1029
датский 1030
Голландский 1043
Английский 1033
Французский 1036
Немецкий 1031
Греческий 1032
Гуджарати 1095
Иврит 1037
Хинди 1081
Исландский 1039
Индонезийский 1057
Итальянский 1040
Японский 1041
Каннада 1099
Корейский 1042
Латышский 1062
Литовский 1063
Малайский - Малайзия 1086
Малаялам 1 100
Маратхи 1102
Польский 1045
Португальский 2070
Панджаби 1094
Румынский 1048
русский 1049
Сербский (кириллица) 3098
Сербский (латиница) 2074
Упрощенный китайский 2052
Словацкий 1051
Словенский 1060
Испанский 3082
Шведский 1053
Тамильский 1097
Телугу 1098
Тайский 1054
Традиционный китайский 1028
Турецкий 1055
Украинский 1058
Урду 1056
Вьетнамский 1066

Фильтры

Полнотекстовый поиск также работает с текстом, хранящимся в двоичных файлах. Но в этом случае для обработки файла требуется установленный фильтр. Дополнительные сведения о фильтрах см. в статье Настройка поисковых фильтров и управление ими.

Список установленных фильтров можно просмотреть путем вызова sp_help_fulltext_system_components 'filter'. Для SQL Server установлены указанные далее фильтры.

Название компонента Идентификатор класса Версия
.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

Семантический поиск основан на функции полнотекстового поиска и предназначен для извлечения и индексирования статистически релевантных ключевых фраз. Эта функция позволяет запрашивать значение в документах в базе данных. Кроме того, с его помощью можно находить похожие документы.

Чтобы использовать семантический поиск, необходимо сначала восстановить базу данных статистики языка семантики на компьютере.

  1. Воспользуйтесь программой sqlcmd и выполните следующую команду Transact-SQL на экземпляре SQL Server Linux. Эта команда восстанавливает базу данных статистики языка.

    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
    

    Примечание.

    При необходимости обновите пути в предыдущей команде RESTORE, чтобы настроить конфигурацию.

  2. Чтобы зарегистрировать базу данных семантической статистики языка, выполните следующую команду Transact-SQL.

    EXEC sp_fulltext_semantic_register_language_statistics_db @dbname = N'semanticsdb';
    GO