配置每次查询占用的最小内存服务器配置选项

本主题介绍如何使用 SQL Server Management Studio 或 Transact-SQL 在 SQL Server 2014 中配置 min memory per query 服务器配置选项。 该 min memory per query 选项指定将分配用于执行查询的最小内存量(以 KB 为单位)。 例如,如果 min memory per query 设置为 2,048 KB,则保证查询至少获得那么多的总内存。 默认值为 1,024 KB。 最小值为 512 KB,最大值为 2,147,483,647 KB (2 GB)。

本主题内容

开始之前

限制和局限

  • 每次查询占用的最小内存的量优先于 索引创建内存选项。 如果改变这两个选项,并且索引创建内存小于每次查询占用的最小内存,则将收到警告消息,但仍会设置值。 在查询执行期间还会收到一个类似的警告。

建议

  • 此选项是一个高级选项,应仅由经验丰富的数据库管理员或经认证的 SQL Server 技术人员更改。

  • SQL Server 查询处理器尝试确定要分配给查询的最佳内存量。 min memory per query 选项允许管理员指定任何单个查询收到的最小内存量。 如果查询需要对大量数据执行哈希和排序操作,则这些查询获得的内存通常比该选项指定的最小内存多。 对于一些小型查询和中等大小的查询,增大 min memory per query 的值可能提高性能,但会导致内存资源争夺加剧。 每次查询占用的最小内存选项包括为排序分配的内存。

安全性

权限

默认情况下,所有用户都具备不带参数或仅带第一个参数的 sp_configure 的执行权限。 若要执行带两个参数的 sp_configure 以更改配置选项或运行 RECONFIGURE 语句,则用户必须具备 ALTER SETTINGS 服务器级别的权限。 ALTER SETTINGS 权限由 sysadminserveradmin 固定服务器角色隐式持有。

使用 SQL Server Management Studio

配置每次查询占用的最小内存选项

  1. 在对象资源管理器中,右键单击服务器并选择 “属性”

  2. 单击 “内存” 节点。

  3. 在“每次查询占用的最小内存”框中,输入将分配给查询执行时所需要的最小内存量 (KB)。

“使用 Transact-SQL”

配置每次查询占用的最小内存选项

  1. 连接到 数据库引擎。

  2. 在标准菜单栏上,单击 “新建查询”

  3. 将以下示例复制并粘贴到查询窗口中,然后单击“执行” 。 本示例演示如何使用 sp_configuremin memory per query 选项的值设置为 3500 KB。

USE AdventureWorks2012 ;  
GO  
EXEC sp_configure 'show advanced options', 1;  
GO  
RECONFIGURE ;  
GO  
EXEC sp_configure 'min memory per query', 3500 ;  
GO  
RECONFIGURE;  
GO  
  

跟进:在配置每次查询占用的最小内存选项之后

该设置将立即生效,无需重新启动服务器。

另请参阅

RECONFIGURE (Transact-SQL)
服务器配置选项 (SQL Server)
sp_configure (Transact-SQL)
配置 index create memory 服务器配置选项