Sql-Server-2014

SQL Server Express 實例記憶體與記憶體限制

  • March 4, 2018

SQL Server 2014 速成版發佈時具有 1 GB 的記憶體限制。

SQL 實例記憶體屬性對這個限製做了什麼?例如,我可以將屬性中的最小和最大記憶體限制設置為 4GB,並且根據任務管理器,該實例將“使用”4GB 的系統記憶體。

我最好將記憶體屬性限制為 1 GB 還是在此處分配 > 1 GB 記憶體有優勢。

社區維基回答

1GB 限制僅適用於緩衝池,SQL Server 也使用其他記憶體池,因此可以看到超過 1GB 的記憶體使用情況。

引用SQL Server 2012 及更高版本中的記憶體配置和大小調整注意事項

從 SQL Server 2012 開始,這些記憶體限制僅對數據庫記憶體(緩衝池)實施。SQL Server 記憶體管理器中的其餘記憶體可以使用比這些版本限制指定的更多的記憶體。例如,SQL Server 2012 Express 版本的數據庫記憶體最多只能使用 1.4 GB。其他記憶體(例如過程記憶體、元數據記憶體等)可以消耗最多由“最大伺服器記憶體”配置指定的記憶體大小。

對於SQL Server 2016 SP1及更高版本,Express 還可以為每個實例的列儲存段使用額外的 352MB,為****每個數據庫的記憶體中 OLTP (Hekaton) 對象使用另外 352MB 。

SQL Server 2016的文件中的最大緩衝池大小也從 1GB 更改為 1410MB,儘管這可能適用於 SQL Server 2012(進行了大記憶體管理更改)。

只有緩衝池、列儲存記憶體和記憶體中 OLTP 記憶體大小受配額限制。Express Edition 中的其他記憶體儲存和記憶體使用者可以將整體記憶體使用量推高到最大伺服器記憶體配置設置中的配置限制。

也可以看看:

引用自:https://dba.stackexchange.com/questions/199090