60Gb 内存、32 位操作系统和 PAE 与 64 位操作系统

dyn*_*com -3 windows-server-2008 pae 32-bit 32bit-64bit sql-server-2008

我在服务器上有 60 Gb 的 RAM。Windows 2008,带有 PAE 的 32 位。

一个 Sql Server 2008 Express 实例可以使用 1 Gb 的 RAM。因此,如果我安装 60 个实例,每个实例都可以使用 1 Gb RAM,对吗?

第二个问题,如果我安装64位系统并使用许多Express实例会怎样?

Mar*_*son 28

哦,天哪...如果您有 60Gb 的 RAM,请省去麻烦并使用 64 位操作系统。此外,60 个 SQL 实例听起来是一种非常奇怪的做事方式,我无法凭良心提出建议。这么大的服务器要花多少钱,一个合适的 SQL 许可证肯定会在预算之内吗?

在内存使用方面,Windows 也非常智能。它将根据需要释放(页面)内存。我已经看到 SQL Server 消耗了服务器中 95% 的可用内存,并且服务器上的其他服务被适当地排除在外。

- 更新 -

从您的评论来看,是什么让您认为 64 位 Windows 正在吞噬您的 RAM?如果您正在查看任务管理器中“物理内存”组中的“空闲”读数,则这不是检查的合适位置。

- 更新 -

关于您在下面的更多评论,您真正想知道的是:哪个更有效 - 1x40Gb 进程,或 40x1Gb 进程,这个问题不能轻易回答。

有点像这样:你需要运送 40 个人。你买 40x VW Polo 的,还是买 40 座的巴士?它们的成本都差不多。这真的取决于你想做什么。每个人都会去同一个地方吗?他们需要以相同的速度到达那里吗?他们需要安慰吗?他们需要安全吗?他们是否憎恨对方,他们是否会在看到对方时刺伤对方的脸?

应用于您的 SQL Server 场景,以及一些假设(基于您在 ServerFault 上提出的其他问题),我可以明确地说,您希望一个庞大的 SQL Server 实例消耗尽可能多的 RAM,因为它可以得到它贪婪的小手。

  • 不。32 位对于更小的应用程序并不更有效率。PAE 效率不高。你不能告诉我 64 位使用了大量的 RAM。我在服务器中拥有的最大 RAM 是 24Gb,而 Windows 空闲,在全新安装后使用 1Gb。这是一个完全可以接受的开销,我怀疑如果它是 x86 或 x64,它会改变。 (6认同)
  • 有效的?还是高效?它们是两种截然不同的东西。而且这个问题不能用笼统的答案来回答,只能针对特定场景来回答。您已经询问过 SQL Server,在我看来,1x40Gb@64-Bit 将在天文数字上领先于 40x1Gb@32-bit,这是绝对毫无疑问的。没有比赛。把手放下。它不仅会更有效率,而且管理、维护和连接的工作也会减少很多。 (3认同)
  • 请记住,PAE 允许处理器在任何给定时间切换可访问的 4GB RAM。切换上下文会导致性能下降,因此如果您正在积极使用 60GB 的 RAM,PAE 是一种可怕的方式。 (3认同)