我刚刚开始了解SQL Server上的内存使用情况。在问题SQL Server 2008 R2“ Ghost Memory”问题的答案中使用查询时?,我发现单个数据库占用了缓冲池中绝大部分的空间。再看一下,使用sys.allocation_units
和sys.indexes
,我确认这很可能是由于数据库中索引的大量使用引起的。大多数索引都是群集的。
另一位数据库开发人员认为我们在服务器上遇到内存问题-由于没有可用的内存,查询开始运行很长时间。
我的问题是-使用这些索引及其在缓冲池中的存在是否会占用其他进程可用的内存?
基于延长的查询时间并查看任务管理器-我的研究表明这是“肮脏,肮脏的骗子”(感谢Brent Ozar-brentozar.com/archive/2011/09/…)。我可能发现没有内存问题-我正在关注这些评论和答案中提供的所有建议!
—
JHFB
由于我们将8滚到这里,我认为查询运行缓慢,因为它们是由“另一个”数据库开发人员编写的……
—
Remus Rusanu 2012年
"Another database developer believes we are having memory issues on the server"
- 根据什么?服务器有多少RAM,实例内存设置是什么,过程高速缓存正在消耗多少内存?