我们从该服务器移出:
SQL Server Express R2 (has a 1CPU/1GB ram limit as far as I'm aware)
2GB Ram
2 core 2.1ghz
至该服务器:
SQL Server R2 Enterprise
8GB Ram
4 core 3.2ghz
一切似乎都运行良好。我们的数据库的 MDF 和 LDF 文件合计大约 600mb(我们只运行 1 个数据库)。
我查看了服务器的一些内存选项,发现我们的数据库的最小服务器内存设置为 0MB,最大值为 2147483647MB。 Use AWE to allocate memory
已关闭。
调整这些值对我们有什么好处吗?8GB 内存中,有 5.5GB 可用。我们仍然需要在服务器上安装一个 Web 应用程序,但这根本不会占用太多空间。
答案1
我同意暂时不去管它。SQL 将尝试将尽可能多的数据加载到内存中,直至达到 MAX SERVER MEMORY 中定义的数量。在当前配置中,600MB db 显然可以装入内存。您的服务器应该有足够的剩余内存,而无需调整 SQL 内存设置。不过,请注意数据库的增长情况。(我不确定您的 db 增长速度是多少)
我喜欢将 SQL 的最大内存设置为(物理内存)-1.5GB,以防实例出现问题。这样,在排除故障时,操作系统仍可以使用一些内存。
我不去管 SQL 的最小内存设置。我个人从来没有理由去改变它。
正如 Mark 所说,如果这是一个专用的服务器 SQL 框,那就很好了。如果您运行其他应用程序级服务,则需要降低最大内存,以便它们能够很好地协同工作。
答案2
如果这是一个专用的 SQL 服务器,则不要改变这些设置。
我唯一一次不得不更改这些设置是当客户处于一种......不幸......的情况下,即拥有一台服务器,需要运行非常繁重的 SQL 实例以及另一个应用程序,这两个应用程序都需要大量内存。然后我们对 SQL Server 的 RAM 设置了最大限制;如果我们不这样做,那么另一个应用程序每隔一天左右就会崩溃。
答案3
我建议将最大服务器内存设置为大约 5-6 GB。最小服务器内存不需要设置。如果您使用的是 64 位版本的 Windows 和 SQL,则不需要 AWE。如果您使用的是 32 位版本的 Windows 和 SQL,则需要启用 AWE。