¿Cómo se obtiene la asignación de memoria mínima y máxima de una instancia de SQL utilizando T-SQL?

15

Administro alrededor de 90 instancias de SQL Server y necesito una consulta para determinar cuánta memoria se ha asignado a cada instancia. Tenga en cuenta que no estoy preguntando cómo configurarlo, solo para ver en qué está configurado actualmente sin usar Management Studio.

Gracias por tu ayuda.

simbólico
fuente
Cuando se ejecuta esto en mi sistema. los valores se dan como 2147483647, la RAM de mi sistema es de solo 2 GB, en este caso, cómo considero el valor de retorno como MB. si lo considero como MB, la RAM de mi sistema debería ser 2097152 GB
Es el valor configurado, no su RAM real. Permite que SQL Server tome hasta esta cantidad de memoria (incluida la memoria virtual)
MichelZ

Respuestas:

26

Prueba esto en la masterbase de datos:

SELECT name, value, value_in_use, [description] 
FROM sys.configurations
WHERE name like '%server memory%'
ORDER BY name OPTION (RECOMPILE);

Te da max server memory (MB)ymin server memory (MB)

MichelZ
fuente
Solo una nota si está utilizando sqlcmd.exe: recomendaría usar el -Winterruptor para recortar espacios en blanco como se describe aquí ; hay muchos de ellos (al menos en mi configuración).
ChriPf