Scripts para controlar el uso de memoria de SQL Server y el Buffer Pool
A menudo utilizamos multitud de consultas T-SQL y scripts cuando estoy solucionando problemas de memoria e incluso para supervisar el uso de memoria de SQL Server. Ahora publicaremos estos scripts aquí en el espíritu de compartir, como estoy seguro de que hay otras variaciones de estos mismos scripts. Estas secuencias de comandos sólo son útiles en la solución de problemas fuera de la memoria (OOM) y otras cuestiones en el Buffer Pool. Este blog no cubre Virtual Dirección / memoria virtual o la memoria de seguimiento fuera del Buffer Pool.
– Consulta para encontrar el uso de Buffer Pool para cada base de datos – Cada una de estas páginas son mostradas en la cache del Buffe, esto significa que están en páginas IN_RAM. DECLARE @total_buffer INT; ;WITH BufCount AS |
— Consulta que muestra las solicitudes concurrentes actuales, otorgada y solicitada para cada sesión activa. — Esto muestra la memoria actualmente asignada para los niveles de instancia de sesión. — Esto puede ser utilizado en un script para obtener el consumo a través del tiempo. SELECT mg.session_id, mg.requested_memory_kb, mg.granted_memory_kb, mg.used_memory_kb, t.text, qp.query_plan |
— SQL Server 2005/2008/R2 — Top de elementos ordenados por uso de memoria SELECT TOP(20) [type] as [Memory Clerk Name], SUM(single_pages_kb) AS [SPA Memory (KB)], SUM(single_pages_kb)/1024 AS [SPA Memory (MB)] FROM sys.dm_os_memory_clerks GROUP BY [type] ORDER BY SUM(single_pages_kb) DESC; — SQL Server 2012 version |
Comment (1)
Muchas gracias!!!