Tengo una base de datos de ~ 45 GB que aumenta rápidamente (~ 1 GB cada semana).
Entonces está haciendo muchos insertos; la aplicación web no tiene muchos usuarios, por lo que las lecturas son bajas en este momento.
Pero me doy cuenta de que los usuarios del servidor RAM sql pasan de ~ 1 GB cuando el servidor comienza a usar ~ 7 GB de RAM después de una semana.
¿Hay algún tipo de pérdida de memoria? Había un artículo en MSDN que sugería que el servidor SQL aumenta la memoria que usa para el almacenamiento en caché y que siempre seguirá aumentando. Sin embargo, el servidor solo tiene 7,5 GB o RAM, por lo que me preocupa que se quede sin memoria a menos que reinicie SQL Server todas las semanas ... lo que parece incorrecto.
¿Es este comportamiento típico? ¿Hay alguna configuración que pueda establecer para establecer un límite en el uso de la memoria?
fuente
Respuestas:
El servidor SQL está destinado a usar tanta memoria RAM como pueda tener en sus manos. El servidor SQL también es increíblemente inteligente. Tenemos servidores de bases de datos con RAM que van desde 2 Gb a 96 Gb y ni una sola vez, he tenido que intervenir y comenzar a administrar la RAM manualmente, y la mayoría de ellos tienen una utilización del 99.5%.
El hecho simple es que SQL Server que se ejecuta con 1 Gb de memoria consumida va a ser mucho más lento en las lecturas que un servidor SQL que se ejecuta con 96 Gb de memoria consumida.
A menos que esté compartiendo los roles del servidor SQL con otros roles intensivos en memoria, simplemente déjelo en paz. Nunca usará más memoria disponible en el sistema, y si alcanza el 99% de utilización, entonces genial: ha creado un caché grande y las cosas serán más rápidas a partir de ahora.
fuente
Por lo general, querrá asignar 1-2 gigas de RAM para el sistema operativo para que el sistema operativo tenga RAM para trabajar. El servidor SQL puede tener el resto de la memoria.
fuente