Quels sont les paramètres corrects pour la mémoire minimale et maximale dans ce cas d'utilisation?
Le serveur a 8 Go de RAM, deux processeurs Intel Xeon, exécutant Windows Server 2008 R2 / Sql Server 2008 Standard Edition. Il exécute plusieurs bases de données allant de 30 Go à 5 Go.
À l'origine, l'utilisation de la mémoire était réglée sur les paramètres par défaut (min = 0 max = 2 147 483 647). Sur ces paramètres, la majeure partie de l'utilisation de la mémoire a été absorbée par sqlservr.exe et le serveur devra éventuellement être redémarré tous les jours ou deux. Il s'exécuterait normalement au début, mais dans un délai d'un jour, le délai d'expiration pour des opérations simples comme la recherche d'un enregistrement à l'aide de la clé primaire.
J'ai changé min = 4,096 et max = 6,144. Cela se traduit par seulement 1,4 Go de mémoire. Cependant, les quatre processeurs fonctionnent désormais à 50-60% d'utilisation du processeur en permanence. Les tâches prennent environ 1/3 de plus à exécuter, bien que le serveur soit beaucoup plus stable.
Réponses:
En regardant la disponibilité de votre RAM pour ce serveur particulier et que vous exécutez plusieurs bases de données allant de 30 Go à 5 Go , vous avez certainement besoin de plus de RAM sur ce serveur.
Vous n'avez pas mentionné qu'il s'agit d'une instance autonome ou que ce serveur a plus d'une instance de serveur SQL en cours d'exécution.
Vos paramètres de mémoire MAX semblent OK pour un serveur ayant 8 Go de RAM. Consultez ces paramètres de bonnes pratiques suggérés par Glenn Berry .
Je vous recommande fortement de faire une base de référence de votre environnement en utilisant les compteurs PERFMON ci-dessous pour obtenir une bonne valeur de votre configuration de mémoire:
Mémoire totale du serveur: quantité de mémoire actuellement allouée au pool de mémoire tampon et non la quantité totale de mémoire à SQL Server
Mémoire du serveur cible: taille idéale du pool de tampons correspondant à la mémoire maximale de l'instance.
Remarque: Si la mémoire totale du serveur> la mémoire du serveur cible, cela suggère une pression mémoire.
Le script ci-dessous vous aidera à trouver les notifications de mémoire FAIBLE ou ÉLEVÉE de
sys.dm_os_ring_buffers
la session de santé du système:Quelques bonnes références:
la source