sql server设置内存限制
问题场景
如何设置sqlserver最大服务器内存?
解决方案
首先确认数据库服务器和云星空服务器是否部署在一起,
1、若数据库服务器单独部署,并且没有部署其他程序需要消耗内存,只有操作系统和数据库软件,可以不必做最大内存限制也不会撑爆操作系统的内存,默认数据库软件最大内存使用率即可,具体可以参考后面的数据库内存使用规则;
2、若数据库服务器和云星空服务器部署在一起,需要确保数据库软件不会把整个服务器的内存资源占用完,从而导致云星空的服务出现资源瓶颈,此时需要对数据库软件做最大内存限制,一般建议按照数据库实际的物理内存划分60%~80%给数据库使用;可以具体根据物理内存的大小进行配置;
若本身是物理内存不够,肯定还是需要进行扩展服务器的物理内存,或者把数据库分开部署。此方案并不能解决实际物理内存不足导致的资源紧张。
具体操作步骤如下:
以数据库管理员用户登录数据库客户端(Microsoft SQL Server Management Studio),在实例名(树形菜单根节点,显示登录名那栏)上右键,选择属性--";内存,设置“最大服务器内存”,单位为MB,可根据实际内存调整。
扩展内容:
sql server修改最大内存设置输入的值太小导致sql server 无法使用的解决方案
数据库使用内存的规则:
由于SQL Server对系统内存的管理原则是:按需分配,且贪婪(用完不还)。它不会自动释放内存,因此执行结果集大的sql语句时,数据取出后,会一直占用内存,直到占满机器内存(并不会撑满,还是有个最大限制,比机器内存稍小),在重启服务前,sqlserver不会释放该内存,也没有任何办法可人为释放。
但是可以通过使用两个内存选项(最小服务器内存和最大服务器内存)重新配置;最小服务器内存的默认设置为 0,最大服务器内存的默认设置为 2147483647 MB。 默认情况下,SQL Server 可以根据可用系统资源动态更改其内存需求。
具体参数介绍参考微软官方解释
sql server设置内存限制
本文2024-09-23 01:16:38发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-144918.html