Mar*_*lli 5 performance sql-server memory sql-server-2008-r2 sql-server-2014
我正在寻找一个迹象(如果有的话),要么忽略内存瓶颈选项,要么接受它,或者让我进一步调查。
例如:
页面寿命:
SELECT [object_name],
[counter_name],
[cntr_value]
FROM sys.dm_os_performance_counters
WHERE [object_name] LIKE '%Manager%'
AND [counter_name] = 'Page life expectancy'
Run Code Online (Sandbox Code Playgroud)
在这种情况下,在我当前的环境中,我有一台具有 8 GB RAM 的服务器,我会要求管理层提供更多内存。我相信这是一个内存瓶颈。
什么是使用 RAM 将是另一项调查。
下面的这封电子邮件是否有效识别可能的内存瓶颈?
我们需要查看 SQLServer:Buffer Cache Hit ratio
如果该比率小于 95%,则表示服务器处于内存压力之下
希望这可以帮助,
我们需要查看SQLServer:缓冲区缓存命中率。如果该比率低于95%,则服务器面临内存压力
停止通过查看缓冲区高速缓存命中率来确定内存压力。这是因为使用SQL Server 中的预读机制,缓冲池中已经有足够多的页面来满足查询,因此 BCHR 无法给出有关内存压力的准确数字。你甚至可能会发现,当存在内存压力时,BCHR 甚至不会下降。所有这些都已在有关 BCHR 的 SQL Server 大辩论中进行了解释
您发布的 PLE 输出似乎非常低,但我们不能仅使用一个计数器来测量内存压力。PLE 更多地指示服务器上的 I/O 活动。由于 I/O 活动频繁,PLE 可能会急剧下降。如果您注意到目标和总服务器内存仍然保持不变。这是个好兆头。
为了Edition upto 2008 R2。您可以使用以下柜台
SQLServer:缓冲区管理器--检查点页数/秒:
SQLServer:缓冲区管理器--内存授予待定:
SQLServer:缓冲区管理器--目标服务器内存:
SQLServer:缓冲区管理器--服务器总内存
SQLServer:缓冲区管理器--空闲页
SQLServer:缓冲区管理器--空闲列表停顿/秒
SQLServer:缓冲区管理器--页面预期寿命
由于SQL Server 2012 onwards少数缓冲池计数器已被弃用,因此我们必须使用内存管理器计数器
SQL Server:内存管理器--目标服务器内存 (KB)
SQL Server:内存管理器--服务器总内存 (KB)
SQL Server:内存管理器 - 可用内存 (KB)
SQL Server:内存管理器——数据库缓存内存 (KB)
SQLServer:缓冲区管理器--空闲页
SQLServer:缓冲区管理器--空闲列表停顿/秒
SQLServer:缓冲区管理器--页面预期寿命
请注意,如果您的磁盘活动较多,请不要忘记参考与磁盘相关的计数器。创建一个数据收集器集并允许其在系统负载达到峰值时运行 4-5 小时,然后在您的问题中添加数据收集器的快照。然后我们就可以确定SQL Server是否需要更多内存。
就个人而言,考虑到当今的工作负载和操作系统要求,8G RAM 有点少。在你的脑海深处,你应该始终考虑增加内存。
| 归档时间: |
|
| 查看次数: |
16281 次 |
| 最近记录: |