設定 max degree of parallelism 伺服器組態選項
本主題描述如何使用 SQL Server Management Studio 或 Transact-SQL,在 SQL Server 2014 中設定 max degree of parallelism
伺服器組態選項。 當 SQL Server 的實例在具有一個以上的微控制器或 CPU 的電腦上執行時,它會偵測到平行處理原則的最佳程度,也就是針對每個平行計劃執行所採用的處理器數目。 您可以使用 max degree of parallelism
選項來限制執行平行計畫所用的處理器數目。 SQL Server 會考慮查詢、索引數據定義語言 (DDL) 作業,以及靜態和索引鍵集驅動數據指標母體擴展的平行執行計劃。
本主題內容
開始之前:
若要使用下列方式設定平行處理原則的最大程度選項:
待處理: 設定平行處理原則的最大程度選項之後
開始之前
限制事項
- 如果 affinity mask 選項未設定為預設值,它可能會限制對稱多重處理 (SMP) 系統上 SQL Server 可用的處理器數目。
建議
此選項是進階選項,只能由經驗豐富的資料庫管理員或經認證的 SQL Server 技術人員變更。
若要讓伺服器判斷平行處理原則的最大程度,請將此選項設定為0,預設值。 將平行處理原則的最大程度設定為 0 可讓 SQL Server 使用最多 64 個處理器的所有可用處理器。 若要隱藏平行計劃產生,請將 設定
max degree of parallelism
為 1。 將值設定為介於 1 到 32,767 的數位,以指定單一查詢執行可以使用的最大處理器核心數目。 如果指定的數值大於可用的處理器數目,就會使用可用處理器的實際數目。 如果電腦只有一個處理器,則會忽略max degree of parallelism
值。您可以在查詢語句中指定 MAXDOP 查詢提示,以覆寫查詢中的平行處理原則值上限。 如需詳細資訊,請參閱 查詢提示 (Transact-SQL)。
建立或重建索引的索引作業,或者卸除叢集索引的索引作業,都需要大量資源。 您可以在索引陳述式中指定 MAXDOP 索引選項,覆寫索引作業中的 max degree of parallelism 值。 MAXDOP 值會在執行時套用至陳述式,且不會儲存在索引中繼資料內。 如需詳細資訊,請參閱 設定平行索引作業。
除了查詢作業和索引作業外,此選項也會控制 DBCC CHECKTABLE、DBCC CHECKDB 和 DBCC CHECKFILEGROUP 的平行處理原則。 您可以使用追蹤旗標 2528 來停用這些陳述式的平行執行計畫。 如需詳細資訊,請參閱追蹤旗誌 (Transact-SQL)。
安全性
權限
不含參數或只含第一個參數之 sp_configure 上的執行權限預設會授與所有使用者。 以同時設定兩個參數的 sp_configure 來變更組態選項或執行 RECONFIGURE 陳述式時,使用者必須取得 ALTER SETTINGS 伺服器層級權限。 系統管理員 (sysadmin) 及 serveradmin 固定伺服器角色會隱含 ALTER SETTINGS 權限。
使用 SQL Server Management Studio
設定 max degree of parallelism 選項
在 [物件總管] 中,以滑鼠右鍵按下伺服器,然後選取 [屬性]。
按一下 [進階] 節點。
在 [平行處理原則的最大程度] 方塊中,選取用於執行平行計畫的最大處理器數目。
使用 TRANSACT-SQL
設定 max degree of parallelism 選項
連線至資料庫引擎。
在標準列中,按一下 [新增查詢] 。
複製下列範例並將其貼到查詢視窗中,然後按一下 [執行] 。 此範例示範如何使用 sp_configure 將
max degree of parallelism
選項設定為8
。
USE AdventureWorks2012 ;
GO
EXEC sp_configure 'show advanced options', 1;
GO
RECONFIGURE WITH OVERRIDE;
GO
EXEC sp_configure 'max degree of parallelism', 8;
GO
RECONFIGURE WITH OVERRIDE;
GO
如需詳細資訊,請參閱伺服器組態選項 (SQL Server)。
待處理:設定 max degree of parallelism 選項之後
設定會立即生效,不需要重新啟動伺服器。
另請參閱
affinity mask 伺服器組態選項
RECONFIGURE (Transact-SQL)
伺服器組態選項 (SQL Server)
sp_configure (Transact-SQL)
CREATE INDEX (Transact-SQL)
ALTER INDEX (Transact-SQL)
ALTER TABLE (Transact-SQL)
DBCC CHECKTABLE (Transact-SQL)
DBCC CHECKDB (Transact-SQL)
DBCC CHECKFILEGROUP (Transact-SQL)
設定平行索引作業
查詢提示 (Transact-SQL)
設定索引選項