OVH Cloud OVH Cloud

limite RAM

2 réponses
Avatar
jpb
Bonjour,
j'ai installé SQL 2000 enterprise sur un serveur 2003 et Go de Ram,
SQL plafonne à 2 Go en cache, y a t'il une raison
merci d'avance
jpaul

2 réponses

Avatar
Cymryr
Attention je ne connais pas windows 2003 mais sous windows 2000 c'etait
aussi 2 Go =>



Oui de base windows ne peux allouer plus de 2 Go de ram a un process mais il
existe plusieurs moyens
1/ appliquer le flag /3Go dans le boot.ini
2/si plus de 4Go alors mettre aussi le flag /pae (a partir de la version
advanced server) et activer l'api AWE de gestion de ram
http://www.sql-server-performance.com/awe_memory.asp

windows 2000 server : gere max 4 go
windows 2000 advanced server : gere max 8 go
windows 2000 datacenter server : gere max 64 go


"jpb" wrote in message
news:
Bonjour,
j'ai installé SQL 2000 enterprise sur un serveur 2003 et Go de Ram,
SQL plafonne à 2 Go en cache, y a t'il une raison
merci d'avance
jpaul


Avatar
Fred BROUARD
bonjour,

Voici ce que je dis dans mon support de cours concernant l'optimisation des
bases de données sous SQL Server :
"
Windows et la mémoire RAM...
En principe on ne peut adresser plus de 4 Go de RAM avec l'OS Windows. Mais
entre 2 Go de RAM et 4 Go, la mémoire au delà des 2 premiers Go est strictement
réservée à l'OS. Pour adresser au delà de 4 Go, on peut utiliser le système AWE
(Address Windowing Extensions) qui permet de paginer en mémoire.

Seules les combinaisons suivantes sont possibles :

OS Version de SQL Server Limite d'adressage RAM

Windows 2000
Windows 2003 SQL Server 2000 Enterprise 8 Go

Windows 2000
Datacenter
Server
Windows 2003
Datacenter
Server SQL Server 2000 Enterprise 64 Go

Pour indiquer au système d'utiliser AWE, il faut ajouter au fichier boot.ini,
une entrée comme suit :

RAM ligne commentaire
4Go RAM /3GB AWE non utilisé, SQL Server utilisera 3 Go de RAM
basse + 1Go pour l'OS
8Go RAM /3GB /PAE SQL Server utilisera 3 Go de RAM basse + 4Go de RAM
haute
16Go RAM /3GB /PAE SQL Server utilisera 3 Go de RAM basse + 12Go de RAM
haute
+ de 16Go /PAE SQL Server n'utilisera que la RAM haute, laissant l'OS
et AWE utiliser la RAM basse
Après l'ajout de cette entrée, il faut re démarrer le serveur...
Il faut ensuite activer l'usage de AWE dans SQL Server (awe enable = 1) et re
démarrer le service.

Attention : dès l'activation de AWE dans SQL Server, ce dernier ne gère plus le
mémoire de manière dynamique mais statique... Ce qui veut dire que SQL Server
prendra toute la mémoire RAM même s'il n'en a pas besoin. On peut lui
restreindre la taille de mémoire préemptée, dans la configuration du serveur :

sp_configure, max server memory (MB)
SQL Server utilise la mémoire vive pour mettre en cache les objets (tables,
index, procédures, vues, triggers... ) et regarde toujours dans la mémoire cache
si l'objet n'y est pas déjà avant de lire le disque. De plus, SQL Server ne lit
pas les objets directement depuis le disque, mais place l'objet à lire dans la
mémoire cache puis lit la mémoire cache.
"

Le cours : http://www.datasapiens.com/prestations/SQL_Server_2000_optimisation.pdf

A +

--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************

jpb a écrit:
Bonjour,
j'ai installé SQL 2000 enterprise sur un serveur 2003 et Go de Ram,
SQL plafonne à 2 Go en cache, y a t'il une raison
merci d'avance
jpaul