ライセンスが許可されているサード パーティのワード ブレーカを読み込む方法
SQL Server 2008 には、ライセンス供与されたサード パーティ製のワード ブレーカが用意されています。対象となる言語は次のとおりです。
デンマーク語
ポーランド語
トルコ語
これらのワード ブレーカは使用可能ですが、既定ではインストールされず、手動で登録してから、フルテキスト インデックスおよびフルテキスト クエリでサポートされている LCID の一覧に追加する必要があります。
前提条件
ワード ブレーカを読み込む前に、次の情報を確認してください。
ワード ブレーカを登録する SQL Server の各インスタンスのインスタンス名
各インスタンスの FTDATA パス
インスタンス ID を取得した後、適切なインスタンス固有の FTData フォルダのパスを取得する必要があります。このパスは、言語の辞書ファイルおよび類義語辞典ファイルを指定する構成値を追加するときに使用します。
SQL Server インスタンスのインスタンス ID を取得するには
[スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。
[ファイル名を指定して実行] ダイアログ ボックスで、[名前] ボックスに「Regedit」と入力します。
[OK] をクリックします。レジストリ エディタが開きます。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL に移動します。右側のペインの [データ] 列に、インストールされている SQL Server のすべてのインスタンスの名前と ID が表示されます。サード パーティのワード ブレーカを読み込む各サーバー インスタンスのインスタンス ID を取得します。
各インスタンスの FTData パスを取得するには
[スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。
[ファイル名を指定して実行] ダイアログ ボックスで、[名前] ボックスに「Regedit」と入力します。
[OK] をクリックします。
レジストリ エディタで、SQL Server のインスタンスのレジストリ キーである HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\instance_ID\MSSQLServer を選択します。ここで、instance_ID はワード ブレーカを読み込むサーバー インスタンスの ID です。たとえば、既定のサーバー インスタンスでは、レジストリ キー値は次のようになります。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.MSSQLSERVER\Setup
右側のペインに FullTextDefaultPath 値が表示されます。この値には、インスタンス固有の FTData フォルダのパスが含まれています。たとえば、SQL Server 2008 の既定のインスタンスのパスは次のようになります。
C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\FTData
ワード ブレーカと関連の言語コンポーネントの登録
マイクロソフトからライセンスが許可されているサード パーティのワード ブレーカのインストール手順は、3 段階で構成されます。各段階の概要は次のとおりです。それぞれの手順については、後で説明します。
ワード ブレーカの COM ClassID と登録する言語のステミング機能インターフェイスを、レジストリの <InstanceRoot>\MSSearch\CLSID ノードにキーとして追加します。
登録する言語の <InstanceRoot>\MSSearch\Language ノードにキーを追加します。
登録する言語の辞書ファイルおよび類義語辞典ファイルの場所を指定する構成値を追加します。
注意 |
---|
ここでは、デンマーク語のワード ブレーカを例として使用します。各言語のワード ブレーカのインストールに必要な値は、このトピックの後半で表に示します。 |
段階 1: ワード ブレーカの COM ClassID と登録する言語のステミング機能インターフェイスの追加
注意 |
---|
レジストリを誤って編集すると、システムに重大な障害が発生する場合があります。レジストリを変更する前に、コンピュータ上のすべての重要なデータをバックアップしておくことをお勧めします。 |
デンマーク語用のこれらのコンポーネントの COM Class ID を追加するには、次の手順に従います。
次の手順を行って、レジストリ エディタを開きます。
[スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。
[ファイル名を指定して実行] ダイアログ ボックスで、[名前] ボックスに「Regedit」と入力します。
レジストリ エディタで、SQL Server のインスタンスのレジストリ キーである HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSearch\CLSID を選択します。
[編集] メニューの [新規] をポイントし、[キー] をクリックします。
「{16BC5CE4-2C78-4CB9-80D5-386A68CC2B2D}」と入力します。
Enter キーを押します。
右側のペインで、[既定] レジストリ値を右クリックし、[修正] をクリックします。
[文字列の編集] ダイアログ ボックスで、[値のデータ] ボックスに「danlr.dll」と入力し、[OK] をクリックします。
手順 4. の値を {83BC7EF7-D27B-4950-A743-0F8E5CA928F8} に置き換えて、手順 3. ~ 7. を繰り返します。
指定した言語で、手順 4. と 8. のキー値を登録する言語のキー値に置き換えて、上記の手順を実行します。次の表に、これらの値の一覧を示します。手順 7. で、danlr.dll を登録する言語の .dll 名に置き換えます。
言語 |
手順 4. のキー値 |
手順 7. の .DLL 名 |
手順 8. のキー値 |
---|---|---|---|
デンマーク語 |
{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: 言語の <InstanceRoot>\MSSearch\Language ノードへのキーの追加
このノードにデンマーク語のキーを追加するには、次の手順を実行します。
SQL Server の既定のインスタンスのレジストリ キーである HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSearch\Language を選択します。
段階 1 の手順 4. のキー名を dan に置き換えて、段階 1 の手順 3. ~ 5. を繰り返します。
指定した言語で、段階 1 の手順 4. のキー名を次の表に示す特定の言語の値に置き換えて、段階 1 の手順を実行します。
言語 |
手順 4. のキー名 |
---|---|
デンマーク語 |
dan |
ポーランド語 |
plk |
トルコ語 |
trk |
段階 3: 登録する言語の各言語コンポーネントがある場所を指定する構成値の追加
デンマーク語用のこれらのコンポーネントの構成値を追加するには、次の手順を実行します。
上記の段階 2 で入力したレジストリ キーを選択します。SQL Server の既定のインスタンスの場合、レジストリ キーは HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSearch\Language\dan です。
[編集] メニューの [新規] をポイントし、[文字列値] をクリックします。
「TsaurusFile」と入力します。
Enter キーを押します。
追加した TsaurusFile レジストリ値を右クリックし、[修正] をクリックします。
[文字列の編集] ダイアログ ボックスで、[値のデータ] ボックスに「tsdan.xml」と入力します。
[OK] をクリックします。
その言語の残りの言語コンポーネント (類義語辞典ファイル、言語 (ロケール)、ワード ブレーカ、ステミング機能) ごとに、手順 2. ~ 7. を繰り返して追加します。デンマーク語、ポーランド語、またはトルコ語用のこれらのコンポーネントを登録するための値を以下に示します。
デンマーク語用の値
言語固有の値の種類 (手順 2.)、値の名前 (手順 3. と 5.)、および値のデータ (手順 6.) を次の表に示す各値セットに置き換え、手順 2. ~ 7. を繰り返して追加します。
手順 2. の値の種類 |
手順 3. と 5. の値の名前 |
手順 6. の値の種類 |
---|---|---|
文字列値 |
TsaurusFile |
tsdan.xml |
DWORD 値 |
Locale |
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.MSSQLSERVER\MSSearch\Language\plk です。
言語固有の値の種類 (手順 2.)、値の名前 (手順 3. と 5.)、および値のデータ (手順 6.) を次の表に示す各値セットに置き換え、手順 2. ~ 7. を実行して追加します。
手順 2. の値の種類 |
手順 3. と 5. の値の名前 |
手順 6. の値のデータ |
---|---|---|
文字列値 |
TsaurusFile |
tsplk.xml |
DWORD 値 |
Locale |
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.MSSQLSERVER\MSSearch\Language\trk です。
言語固有の値の種類 (手順 2.)、値の名前 (手順 3. と 5.)、および値のデータ (手順 6.) を次の表に示す各値セットに置き換え、手順 2. ~ 7. を実行して追加します。
手順 2. の値の種類 |
手順 3. と 5. の値の名前 |
手順 6. の値のデータ |
---|---|---|
文字列値 |
TsaurusFile |
tstrk.xml |
DWORD 値 |
Locale |
0000041f |
文字列値 |
WBreakerClass |
{8DF412D1-62C7-4667-BBEC-38756576C21B} |
文字列値 |
StemmerClass |
{23A9C1C3-3C7A-4D2C-B894-4F286459DAD6} |
フルテキスト検索でサポートされている言語の一覧の更新
サード パーティ製のワード ブレーカを読み込んだら、フルテキスト インデックスおよびフルテキスト クエリでサポートされている LCID の一覧を更新する必要があります。この一覧を更新するには、次のように sp_fulltext_service システム ストアド プロシージャを使用して、言語の一覧を更新します。
exec sp_fulltext_service 'update_languages';
新しく読み込まれたワード ブレーカの言語が、sys.fulltext_languages カタログ ビューによって一覧表示されます。