加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

sql-server – 每个实例的SQL Server Express内存和CPU限制是多

发布时间:2021-01-11 21:09:28 所属栏目:编程 来源:网络整理
导读:如果我在服务器中有8GB的RAM并运行4个SQL Server Express实例,那么SQL Server使用的总内存限制是1GB还是4GB? 是否建议运行这样的多个实例以使每个数据库能够更好地利用资源(假设服务器有足够的资源)? 解决方法 If I have 8GB of RAM in a server and I run

如果我在服务器中有8GB的RAM并运行4个SQL Server Express实例,那么SQL Server使用的总内存限制是1GB还是4GB?

是否建议运行这样的多个实例以使每个数据库能够更好地利用资源(假设服务器有足够的资源)?

解决方法

If I have 8GB of RAM in a server and I run 4 instances of SQL Express,
will the total memory limit used by SQL Server be 1GB or 4GB?

Each instance can use up to 1GB of memory for the buffer pool.每个实例总共可以使用1GB以上的数据,因为并非所有内存分配都通过缓冲池进行.在您的情况下,缓冲池的四个实例使用的最大内存为4GB.

为了确认,我启动了两个SQL Server 2008 Express数据库引擎实例,执行了一些活动来加载(单独的)缓冲池,然后以多种方式查看每个实例的内存利用率,例如使用DBCC MEMORYSTATUS或者使用sys.dm_os_buffer_descriptors DMV计算缓冲区数量.

下面的物理内存使用数是使用在数据库引擎的每个实例上针对系统DMV sys.dm_os_process_memory的同时查询获得的:

SELECT 
    dopm.physical_memory_in_use_kb 
FROM sys.dm_os_process_memory AS dopm;

输出:

╔═══════════╦═══════════╗
║ Instance1 ║ Instance2 ║
╠═══════════╬═══════════╣
║   1102872 ║   1059812 ║
╚═══════════╩═══════════╝

如前所述,由于总物理内存使用量不仅仅包括缓冲池使用量,因此每个都略微超过1GB.

Would it be advisable to run multiple instances like this to enable
each database to make better use of resources (assuming that the
server has plenty of resources)?

如果每个实例上的数据库在功能上独立,那么以这种方式运行多个Express实例至少是可行的,尽管您需要特别注意配置和维护可能会变得更加复杂.

如果预期用法与许可证匹配,则使用其他版本可能会更好,例如功能齐全(且非常便宜)的Developer Edition.你需要更多地了解情况,以便在这一点上得到明确的答案.

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读