最小伺服器記憶體與最大伺服器記憶體的效果

**「最小伺服器記憶體」「最大伺服器記憶體」組態選項會建立 Microsoft SQL Server Database Engine 之緩衝集區所使用的記憶體數量上限與下限。緩衝集區不會立即取得「最小伺服器記憶體」中指定的記憶體數量。緩衝集區只會以初始化所需的記憶體啟動。當 Database Engine 的工作負載增加時,它會一再取得支援工作負載所需的記憶體。除非緩衝集區達到「最小伺服器記憶體」中指定的數量,否則它不會釋放取得的任何記憶體。一旦達到「最小伺服器記憶體」之後,緩衝集區會視需要使用標準演算法來取得和釋放記憶體。唯一的差別在於緩衝集區絕不會將其記憶體配置降到「最小伺服器記憶體」中指定的程度以下,也絕不會取得比「最大伺服器記憶體」**中指定的程度還多的記憶體。

[!附註]

SQL Server 做為處理序會需要比「最大伺服器記憶體」選項所指定還多的記憶體。內部和外部元件都可以在緩衝集區之外配置記憶體 ,這會取用其他記憶體,但是配置給緩衝集區的記憶體通常代表 SQL Server 所取用之記憶體的最大部份。

Database Engine 取得的記憶體數量完全是依據執行個體的工作負載而定。如果 SQL Server 執行個體不需處理許多要求,可能永遠也不會達到**「最小伺服器記憶體」**。

如果針對**「最小伺服器記憶體」「最大伺服器記憶體」**指定相同的值,則一旦配置給 Database Engine 的記憶體達到該值,Database Engine 就會停止動態釋放和取得緩衝集區的記憶體。

如果 SQL Server 的執行個體在電腦上執行,而電腦上又有其他應用程式頻繁地停止或啟動的話,SQL Server 執行個體配置和取消配置記憶體,可能會延遲其他應用程式啟動的時間。同時,如果 SQL Server 是單一電腦上數個執行伺服器應用程式中的一個,則系統管理員可能需要控制配置給 SQL Server 的記憶體數量。在這些情況下,您可以使用 min server memorymax server memory 選項,來控制 SQL Server 可以使用多少記憶體。如需詳細資訊,請參閱<伺服器記憶體選項>。

min server memorymax server memory 選項是以 MB 指定的。