query wait (サーバー構成オプション) の構成

適用対象:SQL Server

このトピックでは、SQL Server で SQL Server Management Studio または Transact-SQL を使用して、query wait サーバー構成オプションを構成する方法について説明します。 メモリを集中的に使用するクエリ (並べ替えやハッシュ演算に関係するクエリなど) は、そのクエリの実行に使用できるメモリが不足しているとキューに登録されます。 [クエリの待機] オプションは、タイムアウトになるまでのクエリのリソース待ち時間を秒数 (0 ~ 2147483647) で指定します。このオプションの既定値は -1 です。 このとき、タイムアウトは予測されるクエリ コストの 25 倍になります。

重要

待機状態のクエリを含むトランザクションでは、クエリがメモリを待機している間、ロック状態が維持されることがあります。 まれに、検出できないデッドロックが発生することもあります。 クエリの待機時間を減らすと、このようなデッドロックが発生する可能性が低くなります。 最終的には、待機状態のクエリが終了し、トランザクション ロックが解放されます。 これに対して、最大待機時間を増やすと、クエリを終了するのに必要な時間も増加することがあります。 このオプションを変更することはお勧めしません。

このトピックの内容

はじめに

推奨事項

  • このオプションは詳細設定オプションであるため、熟練したデータベース管理者または認定された SQL Server プロフェッショナルだけが変更するようにしてください。

セキュリティ

アクセス許可

パラメーターなしで、または最初のパラメーターだけを指定して sp_configure を実行する権限は、既定ですべてのユーザーに付与されます。 両方のパラメーターを指定して sp_configure を実行し構成オプションを変更したり RECONFIGURE ステートメントを実行したりするには、ALTER SETTINGS サーバーレベル権限がユーザーに付与されている必要があります。 ALTER SETTINGS 権限は、 sysadmin 固定サーバー ロールと serveradmin 固定サーバー ロールでは暗黙のうちに付与されています。

SQL Server Management Studio を使用する

[クエリの待機] オプションを構成するには

  1. オブジェクト エクスプローラーで、サーバーを右クリックし、 [プロパティ] をクリックします。

  2. [詳細設定] ノードをクリックします。

  3. [並列処理][クエリの待機] オプションに希望の値を入力します。

Transact-SQL の使用

[クエリの待機] オプションを構成するには

  1. データベース エンジンに接続します。

  2. [標準] ツール バーの [新しいクエリ] をクリックします。

  3. 次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] をクリックします。 この例では、 sp_configure を使用して query wait オプションの値を 7500 秒に設定する方法を示します。

USE AdventureWorks2022;  
GO  
EXEC sp_configure 'show advanced options', 1;  
GO  
RECONFIGURE ;  
GO  
EXEC sp_configure 'query wait', 7500 ;  
GO  
RECONFIGURE;  
GO  
  

詳細については、「サーバー構成オプション (SQL Server)」を参照してください。

補足情報: [クエリの待機] オプションを構成した後

新しい設定は、サーバーを再起動しなくてもすぐに有効になります。

参照

RECONFIGURE (Transact-SQL)
サーバー構成オプション (SQL Server)
sp_configure (Transact-SQL)