Skip to content

1. Sql Server基础配置

1.1 服务器配置

1.服务器内存

这些选项的默认设置和允许的最小值为:

选项默认允许的最小值建议
最小服务器内存 (MB)000
最大服务器内存 (MB)2,147,483,647 兆字节 (MB)128 MB75% 的可用系统内存未被其他进程(包括其他实例)占用。 有关更详细的建议,请参阅最大服务器内存

在SSMS中设置步骤如下:

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

2.选择“服务器属性“窗口的“内存“页。这会显示最小服务器内存和最大服务器内存的当前值

3.在“服务器内存“选项中,输入最小服务器内存和最大服务器内存所需的数字

image-20250220215136779

注意,内存的修改,不用重启服务

  • 使用sql修改,单位MB,12288 MB (12 GB)
sql
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'max server memory', 12288;
GO
RECONFIGURE;
GO
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'max server memory', 12288;
GO
RECONFIGURE;
GO
  • 查看修改之后的值
sql
SELECT [name], [value], [value_in_use]
FROM sys.configurations
WHERE [name] = 'max server memory (MB)' OR [name] = 'min server memory (MB)';
SELECT [name], [value], [value_in_use]
FROM sys.configurations
WHERE [name] = 'max server memory (MB)' OR [name] = 'min server memory (MB)';

image-20250220220052935

2.配置每次查询分配的最小内存

“每次查询占用的最小内存”选项指定将分配给查询执行时所需要的最小内存量(KB)。

在SSMS中设置步骤如下:

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

2.单击“内存”节点。

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

image-20250220220707633

  • sql语句

使用 sp_configuremin memory per query 选项的值设置为 1024 KB

sql
USE master;
GO

EXECUTE sp_configure 'show advanced options', 1;
GO

RECONFIGURE;
GO

EXECUTE sp_configure 'min memory per query', 1024;
GO

RECONFIGURE;
GO

EXECUTE sp_configure 'show advanced options', 0;
GO

RECONFIGURE;
GO
USE master;
GO

EXECUTE sp_configure 'show advanced options', 1;
GO

RECONFIGURE;
GO

EXECUTE sp_configure 'min memory per query', 1024;
GO

RECONFIGURE;
GO

EXECUTE sp_configure 'show advanced options', 0;
GO

RECONFIGURE;
GO

3.配置最大并行度

对于每个并行计划的执行,并行度设置了运行单个语句时所使用的处理器数量

服务器配置处理数目说明
具有单个NUMA节点的服务器小于或等于8个逻辑处理器将MAXDOP保持为小于或等于逻辑处理器的数量
具有单个NUMA节点的服务器大于8个逻辑处理器将MAXDOP保持为8个
具有多个NUMA节点的服务器每个NUMA节点拥有小于或等于16个逻辑处理器将MAXDOP保持为小于或等于每个NUMA节点的逻辑处理器的数量
具有多个NUMA节点的服务器每个NUMA节点大于16个逻辑处理器将MAXDOP保持为每个NUMA节点逻辑处理器数量的一半,最大值为16

4.配置最大工作线程数

1.2 管理数据库引擎服务

1.3 服务器网络配置