我有一个 SQL Server 2008(10.0.1600 版),它运行在具有 8 GB 物理内存的 Windows Server 2008 R2 Enterprise 服务器上。如果我打开任务管理器,我可以在“性能”选项卡的“物理内存”部分看到只有 340 MB 可用,总计 8191,但我看不到任何使用如此数量内存的进程。请注意 SQL Server 的内存限制为 6GB(最大服务器内存 = 6000)。
如果我打开 Sysinternals Process Explorer,我可以看到sqlsrvr.exe进程有:
Private Bytes: 227.000 K
Working Set: 140.000 K
Virtual Size: 8.762.000 K
Run Code Online (Sandbox Code Playgroud)
这是什么意思?有没有办法为其他进程释放这些内存?为什么虚拟大小数字作为分配的内存?我认为虚拟大小只是“保留内存”。