設定 query wait 伺服器組態選項

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

重要事項重要事項

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

本主題內容

  • 開始之前:

    建議

    安全性

  • 若要使用下列項目設定 query wait 選項:

    SQL Server Management Studio

    Transact-SQL

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

開始之前

建議

  • 這個選項是進階選項,只有有經驗的資料庫管理員或通過認證的 SQL Server 技術人員才可變更。

安全性

權限

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

搭配回到頁首連結使用的箭頭圖示[Top]

使用 SQL Server Management Studio

若要設定查詢等候選項

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

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

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

搭配回到頁首連結使用的箭頭圖示[Top]

使用 Transact-SQL

若要設定查詢等候選項

  1. 連接到 Database Engine。

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

  3. 將下列範例複製並貼到查詢視窗中,然後按一下 [執行]。 此範例示範如何使用 sp_configure 將 query wait 選項的值設定為 7500 秒。

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

如需詳細資訊,請參閱<伺服器組態選項>。

搭配回到頁首連結使用的箭頭圖示[Top]

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

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

搭配回到頁首連結使用的箭頭圖示[Top]

請參閱

參考

RECONFIGURE (Transact-SQL)

sp_configure (Transact-SQL)

概念

伺服器組態選項