web-dev-qa-db-fra.com

Garder par défaut Mémoire max 2147483647 MB ​​Valeur dans SQL Server, une mauvaise pratique?

Sur la base de cette page MSDN: - Paramètres de la mémoire de serveur C'est une bonne pratique pour conserver les valeurs par défaut pour les serveurs SQL-SERVERS MIN et Max Memory pour le garder dynamique ...

D'après ce que j'ai appris à travers des tutoriels, vous devez toujours définir une valeur maximale, à propos de Min, je n'ai pas beaucoup entendu beaucoup. Je surveillant mon pageFILE à l'aide de Simple Old Perfmon et je me suis rendu compte que rarement de diskswapping est suscité et une fois que cela a failli causer un crash de serveur.

Cela peut-il être lié pour avoir le paramètre de mémoire max par défaut dans SQL Server? Les bases de données sont d'environ 150 Go et la mémoire est de 48 Go, aucune autre application est exécutée sur cette machine.

En outre, pourquoi devriez-vous avoir une valeur minimale? Je sais qu'une valeur trop basse peut empêcher le serveur SQL de démarrer et je sais que SQL-Server garde des trucs en mémoire afin que cela n'essaie pas de libérer son cache.

J'utilise SQL-Server 2012, merci d'avance!

6
RayofCommand

La valeur minimale est utile lorsque vous avez un serveur avec plusieurs instances. Vous pouvez l'utiliser pour hiérarchiser l'utilisation de la mémoire par instance. Mais principalement, il est de garantir que SQL a au moins une quantité de mémoire avec laquelle travailler. Cela empêche les gens de courir quelque chose sur le serveur et de voler toute la mémoire.

Le paramètre par défaut laisse fondamentalement une allocation de mémoire à SQL Server, mais il est préférable de définir une valeur statique de manière à ce qu'il n'y ait jamais de problème de mémoire SQL à l'écart des autres processus ou du système d'exploitation. Ceci est un must Si vous exécutez SSIS, SSAS, SSRS ou tout autre Serverice/Application sur le même serveur.VSO Votre paramètre doit laisser suffisamment de mémoire pour les applications OS + Services + exécutant sur le serveur.

2
James Anderson