Как загрузить лицензионные средства разбиения по словам, созданные сторонними разработчиками

В состав SQL Server 2008 R2 входят лицензионные средства разбиения по словам сторонних разработчиков для следующих языков.

  • Датский

  • Польский

  • Турецкий

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

Сведения о готовности к установке

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

  • Имена всех экземпляров SQL Server, на которых требуется зарегистрировать средства разбиения по словам.

  • Путь к папке FTDATA для каждого экземпляра.

    Получив идентификатор экземпляра, необходимо извлечь соответствующий путь к папке «FTData» для него. Затем с помощью этого пути можно добавлять значения конфигурации, указывающие для данного языка файлы лексикона и тезауруса.

Получение имени каждого экземпляра SQL Server

  1. Нажмите кнопку Пуск, выберите пункт Выполнить.

  2. В диалоговом окне Запуск программы в поле Открыть введите «Regedit».

  3. Нажмите кнопку ОК. Откроется редактор реестра.

  4. В редакторе реестра выберите следующий раздел реестра для первого экземпляра SQL Server 2008 R2 с идентификатором MSSQL10_50.MSSQLSERVER: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\SQL

    В области справа отобразятся имена экземпляров с указанием соответствующих идентификаторов экземпляра.

Важное примечаниеВажно!

Чтобы получить имя другого экземпляра сервера, необходимо вместо MSSQL10_50.MSSQLSERVER использовать идентификатор этого экземпляра.

Получение пути к папке FTData для каждого экземпляра

  1. Нажмите кнопку Пуск, выберите пункт Выполнить.

  2. В диалоговом окне Запуск программы в поле Открыть введите Regedit.

  3. Нажмите кнопку ОК.

  4. В редакторе реестра выберите следующий раздел реестра для экземпляра SQL Server: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\instance_ID\MSSQLServer, где instance_ID — MSSQL10_50.MSSQLSERVER для первого экземпляра SQL Server. Раздел реестра будет иметь следующее значение:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\Setup

    На панели справа отобразится значение FullTextDefaultPath, содержащее путь к папке «FTData» для данного экземпляра. Например, для первого экземпляра SQL Server 2008 R2 это может быть путь по умолчанию:

    C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\FTData

Регистрация средства разбиения по словам и связанных лингвистических компонентов

Процедура установки средств разбиения по словам сторонних разработчиков, лицензированных корпорацией Майкрософт, состоит из трех этапов. В следующем списке представлены эти этапы, а шаги описаны далее в этом разделе.

  1. Добавьте COM-идентификаторы ClassID для интерфейсов средств разбиения по словам и парадигматических модулей регистрируемого языка в виде раздела реестра в узел <InstanceRoot>\MSSearch\CLSID.

  2. Добавьте раздел для языка в узел <корневой_путь_экземпляра>\MSSearch\Language.

  3. Добавьте значения конфигурации, определяющие расположение файлов лексикона и тезауруса для данного языка.

ПримечаниеПримечание

В этом разделе в качестве примера описывается средство разбиения по словам для датского языка. Значения, необходимые для установки средств разбиения по словам для каждого из языков, приведены в таблицах далее в этом разделе.

Этап 1. Добавление COM-идентификаторов ClassID для интерфейсов средств разбиения по словам и парадигматических модулей регистрируемого языка

ПредупреждениеВнимание!

Неправильное изменение реестра может вызвать серьезные проблемы. Перед внесением изменений в реестр необходимо создать резервную копию всех ценных данных на компьютере.

Чтобы добавить COM-идентификаторы ClassID для этих компонентов для датского языка выполните следующие действия**.**

  1. Откройте редактор реестра. Для этого:

    1. нажмите кнопку Пуск и выберите пункт Выполнить;

    2. в диалоговом окне Запуск программы в поле Открыть введите Regedit.

  2. В редакторе реестра выберите следующий раздел реестра для первого экземпляра SQL Server: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSearch\CLSID

  3. В меню щелкните Правка, выберите пункт Создать и команду Раздел.

  4. Введите {16BC5CE4-2C78-4CB9-80D5-386A68CC2B2D}.

  5. Нажмите клавишу ВВОД.

  6. На правой панели щелкните правой кнопкой мыши значение реестра По умолчанию и выберите команду Изменить.

  7. В диалоговом окне Изменить строку в поле Значение введите danlr.dll и нажмите кнопку ОК.

  8. Повторите шаги с 3 по 7, заменив значение в шаге 4 на {83BC7EF7-D27B-4950-A743-0F8E5CA928F8}.

Для данного языка выполните описанные выше шаги, заменив значения разделов реестра в шагах 4 и 8 на значения разделов для нужного языка. Эти значения перечислены ниже. В шаге 7 вместо «danlr.dll» введите имя DLL-файла для того языка, который нужен.

Язык

Значение раздела для шага 4

Имя DLL-файла для шага 7

Значение раздела для шага 8

Danish

{16BC5CE4-2C78-4CB9-80D5-386A68CC2B2D}

danlr.dll

{83BC7EF7-D27B-4950-A743-0F8E5CA928F8}

Польский

{B8713269-2D9D-4BF5-BF40-2615D75723D8}

lrpolish.dll

{CA665B09-4642-4C84-A9B7-9B8F3CD7C3F6}

Турецкий язык

{23A9C1C3-3C7A-4D2C-B894-4F286459DAD6}

trklr.dll

{8DF412D1-62C7-4667-BBEC-38756576C21B}

Этап 2. Добавление раздела для языка в узел <корневой_путь_экземпляра>\MSSearch\Language.

Для добавления в этот узел раздела для датского языка выполните следующие действия.

  1. Выберите следующий раздел реестра для первого экземпляра SQL Server: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSearch\Language

  2. Повторите шаги 3–5 предыдущей процедуры, заменив название раздела в шаге 4 словом dan.

Для данного языка выполните описанные выше шаги, заменив название раздела в шаге 4 на выбранное по следующей таблице название нужного языка.

Язык

Название раздела для шага 4

Danish

dan

Polish

plk

Turkish

trk

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

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

  1. Выберите тот же раздел реестра, который был выбран ранее на этапе 2. Для первого экземпляра SQL Server им будет следующий раздел: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSearch\Language\dan

  2. В меню щелкните Правка, выберите команду Создать и параметр Строковое значение.

  3. Введите TsaurusFile.

  4. Нажмите клавишу ВВОД.

  5. Щелкните правой кнопкой мыши добавленный параметр реестра TsaurusFile и выберите команду Изменить.

  6. В диалоговом окне Изменение строкового параметра введите tsdan.xml в поле Значениеполя.

  7. Нажмите кнопку ОК.

Повторите шаги 2–7 для остальных лингвистических компонентов языка: файла тезауруса, языка (языковой стандарт), средства разбиения по словам и парадигматического модуля. Далее представлены значения для регистрации этих компонентов для датского, польского и турецкого языков.

Значения для датского языка

Чтобы добавить перечисленные ниже наборы значений, повторите шаги 2–7, заменив тип значения для конкретного языка (шаг 2), название значения (шаги 3 и 5) и само значение (шаг 6) для каждого значения.

Тип значения для шага 2

Название значения для шагов 3 и 5

Тип значения для шага 6

Строковое значение

TsaurusFile

tsdan.xml

Значение DWORD

Локаль

00000406

Строковое значение

WBreakerClass

{16BC5CE4-2C78-4CB9-80D5-386A68CC2B2D}

Строковое значение

StemmerClass

{83BC7EF7-D27B-4950-A743-0F8E5CA928F8}

Значения для польского языка

Для польского языка выполните шаги, описанные выше, пользуясь значениями, перечисленными далее. Выберите тот же раздел реестра, который был выбран для польского языка ранее на этапе 2. Для первого экземпляра SQL Server это будет следующий раздел: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSearch\Language\plk

Чтобы добавить перечисленные ниже наборы значений, выполните шаги 2–7, заменив тип значения для конкретного языка (шаг 2), название значения (шаги 3 и 5) и само значение (шаг 6) для каждого значения.

Тип значения для шага 2

Название значения для шагов 3 и 5

Значение для шага 6

Строковое значение

TsaurusFile

tsplk.xml

Значение DWORD

Локаль

00000415

Строковое значение

WBreakerClass

{CA665B09-4642-4C84-A9B7-9B8F3CD7C3F6}

Строковое значение

StemmerClass

{B8713269-2D9D-4BF5-BF40-2615D75723D8}

Значения для турецкого языка

Для турецкого языка выполните шаги, описанные выше, пользуясь значениями, перечисленными далее. Выберите тот же раздел реестра, который был выбран для турецкого языка ранее на этапе 2. Для первого экземпляра SQL Server это будет следующий раздел: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSearch\Language\trk

Чтобы добавить перечисленные ниже наборы значений, выполните шаги 2–7, заменив тип значения для конкретного языка (шаг 2), название значения (шаги 3 и 5) и само значение (шаг 6) для каждого значения.

Тип значения для шага 2

Название значения для шагов 3 и 5

Значение для шага 6

Строковое значение

TsaurusFile

tstrk.xml

Значение DWORD

Локаль

0000041f

Строковое значение

WBreakerClass

{8DF412D1-62C7-4667-BBEC-38756576C21B}

Строковое значение

StemmerClass

{23A9C1C3-3C7A-4D2C-B894-4F286459DAD6}

Обновление списка языков, зарегистрированных для полнотекстового поиска

После загрузки сторонних средств разбиения по словам следует обновить список кодов языков, поддерживаемых для полнотекстового индексирования и для выполнения запросов. Чтобы обновить этот список, воспользуйтесь системной хранимой процедурой sp_fulltext_service для выполнения следующих шагов.

  1. Загрузите вновь установленные средства разбиения по словам и фильтры на экземпляр сервера следующим образом:

    EXEC sp_fulltext_service @action='load_os_resources', @value=1;
    
  2. Обновите список языков, как показано ниже:

    exec sp_fulltext_service 'update_languages';
    

После этого языки добавленных средств разбиения по словам будут перечислены в представлении каталога sys.fulltext_languages.