web-dev-qa-db-fra.com

Quand ne dois-je PAS définir l'option de mémoire maximale du serveur dans SQL Server?

Dans SQL Server, je règle normalement le paramètre Mémoire maximale du serveur sur l'une des meilleures pratiques courantes, comme laisser 10% ou 4 Go, selon la valeur la plus élevée.

http://www.brentozar.com/archive/2012/11/how-to-set-sql-server-max-memory-for-vmware/

J'ai un nouveau serveur avec 64 Go de RAM. En raison de contraintes de licence, ce serveur doit exécuter le moteur de base de données SQL Server, SSIS et SSAS. Les ETL SSIS se produisent du jour au lendemain et les utilisateurs accèdent à la base de données réelle principalement pendant la journée. Dans ce scénario, serait-il préférable de laisser le paramètre par défaut afin que SSIS puisse prendre la mémoire si nécessaire, puis que le moteur de base de données puisse prendre la mémoire quand il en a besoin?

4
SomeGuy

Vous devez toujours définir votre mémoire maximale loin de la valeur par défaut et laisser de la place pour le système d'exploitation (voir la publication de Jonathan sur la quantité de mémoire à laisser en fonction de la quantité de = RAM installé).

Jonathan Kehayias a blogué sur: De combien de mémoire mon SQL Server a-t-il réellement besoin?

réserver 1 Go de RAM pour le système d'exploitation, 1 Go pour chaque 4 Go de RAM installée de 4 à 16 Go, puis 1 Go pour 8 Go) RAM installée au-dessus de 16 Go de RAM.

Vous pouvez également vous référer à ma réponse ici pour plus de détails.

serait-il préférable de laisser le paramètre par défaut

NON, ne le laissez pas par défaut, car des problèmes tels que la non-réponse du système d'exploitation, le découpage du jeu de travail ainsi que d'autres applications exécutées sur le serveur seront affectés de manière négative. Cela affectera également vos sauvegardes.

Notez que le gestionnaire de mémoire pour SQL Server 2012 et versions ultérieures a changé .

6
Kin Shah

Vous avez un environnement complexe avec SSIS et SSAS, vous devez donc être prudent avec le paramètre de mémoire maximale du serveur pour SQL Server. Dans votre scénario, les blogs de Jonathan ne fourniraient pas une aide complète . Vous devez vous référer à Ce lien Microsoft pour déterminer les besoins en mémoire pour SSIS

Vous devez laisser suffisamment de mémoire pour OS,SSIS,SSAS pour fonctionner correctement comme SSIS,SSAS ne prend pas de mémoire du pool de tampons. Vous pouvez commencer par donner 10-15 G to OS et reste sur le serveur SQL. Ensuite, surveillez l'utilisation de la mémoire SSIS et SQL Server avec des compteurs perfmon.

En ce qui concerne la quantité de mémoire à conserver pour SQL Server, vous devez utiliser les compteurs Perfmon. Cet article donnera les détails du compteur perfmon à surveiller pour obtenir une valeur précise pour la mémoire serevr max pour le serveur SQL

  • SQLServer: Buffer Manager - Espérance de vie de page (PLE)

  • SQLServer: Buffer Manager - CheckpointPages/sec

  • SQLServer: Buffer Manager - Freepages

  • SQLServer: Gestionnaire de mémoire - Attribution de mémoire en attente

  • SQLServer: gestionnaire de mémoire - Mémoire du serveur cible:

  • SQLServer: Memory Manager - Mémoire totale du serveur

0
Shanky