sp_fulltext_service (Transact-SQL)
適用対象: SQL Server
SQL Server のフルテキスト検索のサーバー プロパティを変更します。
注意事項
upgrade_option
アクションは、SQL Server 2022 (16.x) 以降のバージョンでは完全にはサポートされていません。 詳細については、この記事で後述する「 SQL Server 2022 以降のバージョンとの互換性 」セクションを参照してください。
構文
sp_fulltext_service
[ [ @action = ] N'action' ]
[ , [ @value = ] value ]
[ ; ]
引数
[ @action = ] N'action'
変更またはリセットするプロパティ。 @action は nvarchar(100)で、既定値はありません。 @actionプロパティ、プロパティの説明、設定できる値の一覧については、@value引数の下の表を参照してください。
この引数は、次のプロパティを返します。
- データ型 (data type)
- 現在の実行中の値
- 最小値または最大値
- 非推奨の状態 (該当する場合)。
[ @value = ] value
@value は sql_variantで、既定値は NULL
です。
指定したプロパティの値。 @value は sql_variantで、既定値は NULL
です。 @valueが null の場合、sp_fulltext_service
は現在の設定を返します。 次の表は、アクション プロパティとその説明、および設定できる値の一覧です。
Note
SQL Server の今後のリリースでは、 clean_up
、 connect_timeout
、 data_timeout
、 resource_usage
のアクションが削除される予定です。 新しい開発作業ではこれらのアクションを使用しないようにし、現在使用しているアプリケーションを変更することを計画します。
アクション | データの種類 | 説明 |
---|---|---|
clean_up |
int | 旧バージョンとの互換性のためにのみサポートされています。 値は常に 0 。 |
connect_timeout |
int | 旧バージョンとの互換性のためにのみサポートされています。 値は常に 0 。 |
data_timeout |
int | 旧バージョンとの互換性のためにのみサポートされています。 値は常に 0 。 |
load_os_resources |
int | オペレーティング システムのワード ブレーカー、ステミング機能、フィルターを SQL Server のこのインスタンスに登録して使用するかどうかを示します。 次のいずれか:0 = SQL Server のこのインスタンスに固有のフィルターとワード ブレーカーのみを使用します。1 = オペレーティング システム フィルターとワード ブレーカーを読み込みます。オペレーティング システムに行われた更新によって予期しない動作が起こるのを防ぐため、既定ではこのプロパティは無効になっています。 オペレーティング システム リソースの使用を有効にすると、インスタンス固有のリソースがインストールされていない Microsoft Indexing Service に登録されている言語とドキュメントの種類のリソースにアクセスできます。 オペレーティング システム リソースの読み込みを有効にする場合は、オペレーティング システム リソースが信頼できる署名付きバイナリであることを確認します。それ以外の場合は、 verify_signature が 1 に設定されている場合は読み込まれません。 |
master_merge_dop |
int | マスター マージ プロセスで使用するスレッドの数を指定します。 この値は、使用可能な CPU または CPU コアの数を超えないようにしてください。 この引数を指定しない場合、サービスは使用する 4 の数が少ないか、使用可能な CPU または CPU コアの数が少なくなります。 |
pause_indexing |
int | フルテキスト インデックス作成を現在実行中の場合は一時停止するか、現在一時停止している場合は再開するかを指定します。0 = サーバー インスタンスのフルテキスト インデックス作成アクティビティを再開します。1 = サーバー インスタンスのフルテキスト インデックス作成アクティビティを一時停止します。 |
resource_usage |
int | SQL Server 2008 (10.0.x) 以降のバージョンでは機能せず、無視されます。 |
update_languages |
NULL |
フルテキスト検索に登録された言語の一覧を更新します。 言語は、インデックス作成を構成するときに、およびフルテキスト クエリで指定されます。 フィルター デーモン ホストは、フルテキスト インデックス作成のために、varbinary、varbinary(max)、image、xml などのデータ型に格納されている.docx などの対応するファイル形式からテキスト情報を抽出するために使用されます。詳細については、「 登録されたフィルターとワード ブレーカーの表示または変更を参照してください。 |
upgrade_option |
int | データベースを SQL Server 2005 (9.x) から新しいバージョンにアップグレードするときにフルテキスト インデックスを移行する方法を制御します。 このプロパティは、データベースのインポート、データベース バックアップの復元、ファイル バックアップの復元、またはデータベース コピー ウィザードを使用したデータベースのコピーによってアップグレードする場合に適用されます。 次のいずれか: - 0 = フルテキスト カタログは、新しい拡張ワード ブレーカーを使用して再構築されます。 インデックスの再構築には時間がかかる場合があり、アップグレード後に大量の CPU とメモリが必要になる場合があります。- 1 = フルテキスト カタログがリセットされます。 SQL Server 2005 (9.x) のフルテキスト カタログ ファイルは削除されますが、フルテキスト カタログのメタデータおよびフルテキスト インデックスは保持されます。 アップグレード後、すべてのフルテキスト インデックスは変更の追跡に対して無効になり、クロールは自動的に開始されません。 アップグレードの完了後、手動で完全作成を実行するまで、カタログは空のままになります。- 2 = フルテキスト カタログがインポートされます。 通常、インポートは再構築よりも高速です。 たとえば、CPU を 1 つだけ使用している場合、インポートは、再構築の約 10 倍の速さで実行されます。 ただし、インポートされたフルテキスト カタログでは、新しい強化されたワード ブレーカーは使用されないため、代わりにフルテキスト カタログを再構築することもできます。 SQL Server 2022 (16.x) 以降のバージョンで削除され、エラーが発生します。注: リビルドはマルチスレッド モードで実行できます。また、使用可能な CPU が 10 個を超える場合は、すべての CPU のリビルドを許可すると、インポートよりもリビルドの実行速度が速くなる可能性があります。 フルテキスト カタログを使用できない場合は、関連付けられているフルテキスト インデックスが再構築されます。 このオプションは、SQL Server 2005 (9.x) データベースでのみ使用できます。 フルテキスト アップグレード オプションの選択については、「フルテキスト検索のアップグレード」をご覧ください。 注: SQL Server Management Studio でこのプロパティを設定するには、 Full-Text Upgrade Option プロパティを使用します。 詳細については、「 サーバー インスタンスでのフルテキスト検索の管理と監視」を参照してください。 |
verify_signature |
int | フルテキスト エンジンが署名付きバイナリのみを読み込むかどうかを示します。 既定では、信頼された署名付きバイナリのみが読み込まれます。1 = 信頼された署名付きバイナリのみが読み込まれる (既定) ことを確認します。0 = バイナリが署名されているかどうかを確認しないでください。 |
リターン コードの値
0
(成功) または 1
(失敗)。
結果セット
なし。
SQL Server 2022 以降のバージョンとの互換性
upgrade_option
アクション (@action = 'upgrade_option', @value = 2
で指定) のインポート機能は、SQL Server 2022 (16.x) 以降のバージョンで削除されます。 以前のバージョンの SQL Server からフルテキスト インデックスをインポートする必要がある場合は、SQL Server 2019 (15.x) 以前のバージョンを使用してインポートし、SQL Server 2022 (16.x) にアップグレードできます。
アクセス許可
serveradmin固定サーバー ロールまたはシステム管理者のメンバーのみがsp_fulltext_service
を実行できます。
例
A. 登録されている言語の一覧を更新する
次の例では、フルテキスト検索に登録された言語の一覧を更新します。
EXECUTE sp_fulltext_service 'update_languages';
GO
B. フルテキスト カタログをリセットするようにフルテキスト アップグレード オプションを変更する
次の例では、フルテキスト アップグレード オプションを変更してフルテキスト カタログをリセットし、完全に削除します。 この例では、省略可能な @action と @value 引数を指定します。
EXECUTE sp_fulltext_service
@action = 'upgrade_option',
@value = 1;
GO