設定 index create memory 伺服器組態選項
此主題描述如何使用 SQL Server Management Studio 或 Transact-SQL,在 SQL Server 2012 中設定 index create memory 伺服器組態選項。 index create memory 選項會控制最初配置來建立索引的記憶體數量上限。 這個選項的預設值是 0 (自我設定)。 若稍後在建立索引時需要更多記憶體,且有足夠的記憶體可用,則伺服器會使用該記憶體,因而超過此選項的設定。 若沒有更多可用的記憶體,則會使用預先配置的記憶體繼續進行索引建立作業。
本主題內容
開始之前:
限制事項
建議
安全性
使用下列方法設定 index create memory 選項:
SQL Server Management Studio
Transact-SQL
待處理:設定 index create memory 選項之後
開始之前
限制事項
min memory per query 選項之設定的優先順序高於 index create memory 選項。 若您同時變更了兩個選項,且 index create memory 小於 min memory per query,您會看到警告訊息,但仍會設定該值。 執行查詢時,您會看到同樣的警告。
使用資料分割資料表與索引時,如果有非對齊之資料分割索引與高度平行處理,建立索引時所需的最低記憶體需求會大幅增加。 此選項會控制在單一索引建立作業中,為所有索引資料分割配置的初始記憶體數量總計。 若此選項設定的記憶體數量小於執行查詢所需的最低記憶體需求,則查詢會終止,且會顯示錯誤訊息。
此選項的執行值將不會超過執行 SQL Server 之作業系統與硬體平台可用的實際記憶體數量。 在 32 位元作業系統上,執行值會低於 3 GB。
建議
這個選項是進階選項,只有有經驗的資料庫管理員或通過認證的 SQL Server 技術人員才可變更。
index create memory 選項為自我設定,並且通常不需要調整便可使用。 然而,如果無法建立索引,請考慮增加這個選項的執行值。
安全性
權限
依預設,所有使用者都會取得不含參數或只含第一個參數之 sp_configure 的執行權限。 若要執行同時設定了兩個參數的 sp_configure 來變更組態選項或執行 RECONFIGURE 陳述式,使用者必須取得 ALTER SETTINGS 伺服器層級權限。 系統管理員 (sysadmin) 和伺服器管理員 (serveradmin) 固定伺服器角色會隱含地擁有 ALTER SETTINGS 權限。
[回到頁首]
使用 SQL Server Management Studio
若要設定 index create memory 選項
在 [物件總管] 中,以滑鼠右鍵按一下伺服器,然後選取 [屬性]。
按一下 [記憶體] 節點。
在 [索引建立記憶體] 之下,輸入或選取所要的索引建立記憶體選項值。
index create memory 選項可用來控制索引建立排序所使用的記憶體大小。 index create memory 屬於自我設定的選項,而且不需調整即可適用於大部份情況。 然而,如果無法建立索引,請考慮增加這個選項的執行值。 查詢排序是透過 min memory per query 選項來控制。
[回到頁首]
使用 Transact-SQL
若要設定 index create memory 選項
連接到 Database Engine。
在標準列中,按一下 [新增查詢]。
將下列範例複製並貼到查詢視窗中,然後按一下 [執行]。 此範例示範如何使用 sp_configure 將 index create memory 選項的值設定為 4096。
USE AdventureWorks2012 ;
EXEC sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
EXEC sp_configure 'index create memory', 4096
GO
RECONFIGURE;
GO
如需詳細資訊,請參閱<伺服器組態選項>。
[回到頁首]
待處理:設定 index create memory 選項之後
設定會立即生效,不需要重新啟動伺服器。
[回到頁首]
請參閱
參考
sys.configurations (Transact-SQL)