設定 query wait 伺服器組態選項

適用於:SQL Server

本主題說明如何使用 SQL Server Management Studio 或 Transact-SQL,在 SQL Server 中設定 [查詢等待] 伺服器組態選項。 如果因為記憶體不足,無法執行會使用大量記憶體的查詢 (例如涉及排序與雜湊的查詢),則這些查詢會排入佇列中。 query wait 選項會指定逾時前,查詢等候資源的秒數 (從 0 到 2147483647)。這個選項的預設值是 -1。 這表示逾時時間就會是估計查詢成本的 25 倍。

重要

當查詢在等候記憶體時,包含等候中查詢的交易可能會持有鎖定。 在極少數的情況下,可能會發生無法偵測的死結。 減少查詢等候時間會降低發生這類死結的可能性。 最後,等待的查詢會終止,並釋放其交易鎖定。 然而增加等候時間的上限,可能會增加終止前的查詢時間量。 不建議您更改這個選項。

本主題內容

開始之前

建議

  • 此選項是進階選項,只有具經驗的資料庫管理員或通過認證的 SQL Server 專業人員才可變更。

安全性

權限

不含參數或只含第一個參數之 sp_configure 上的執行權限預設會授與所有使用者。 以同時設定兩個參數的 sp_configure 來變更組態選項或執行 RECONFIGURE 陳述式時,使用者必須取得 ALTER SETTINGS 伺服器層級權限。 系統管理員 (sysadmin)serveradmin 固定伺服器角色會隱含 ALTER SETTINGS 權限。

使用 SQL Server Management Studio

若要設定查詢等候選項

  1. 在物件總管中,請以滑鼠右鍵按一下伺服器,然後選取 [屬性]。

  2. 按一下 [進階] 節點。

  3. [平行處理原則] 下方,為 query wait 選項輸入想要的值。

使用 TRANSACT-SQL

若要設定查詢等候選項

  1. 連線至資料庫引擎。

  2. 在標準列中,按一下 [新增查詢]

  3. 複製下列範例並將其貼到查詢視窗中,然後按一下 [執行] 。 此範例示範如何使用 sp_configurequery 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)

待處理:設定 query wait 選項之後

設定會立即生效,不需要重新啟動伺服器。

另請參閱

RECONFIGURE (Transact-SQL)
伺服器組態選項 (SQL Server)
sp_configure (Transact-SQL)