Perf sga free pool
Aller à la navigation
Aller à la recherche
| Fiche express | |
|---|---|
| Type | Script SQL*Plus de diagnostic |
| Domaine | Performance |
| Voir aussi | Perf sga usage · Perf shared pool memory |
Perf sga free pool calcule, pour chaque pool mémoire de la SGA (shared pool, large pool, java pool, streams pool...), le volume alloué, le volume libre et le pourcentage de mémoire libre. Vue plus synthétique que Perf sga usage, qui détaille composant par composant plutôt que pool par pool.
Script
COLUMN pool HEADING 'Pool'
COLUMN name HEADING 'Composant'
COLUMN sgasize HEADING 'Alloué' FORMAT 999,999,999
COLUMN bytes HEADING 'Libre' FORMAT 999,999,999
SELECT
f.pool
, f.name
, s.sgasize
, f.bytes
, ROUND(f.bytes / s.sgasize * 100, 2) "% Libre"
FROM
(SELECT SUM(bytes) sgasize, pool FROM v$sgastat GROUP BY pool) s
, v$sgastat f
WHERE
f.name = 'free memory'
AND f.pool = s.pool
/
Interprétation
- Un pourcentage libre chroniquement bas (moins de 5-10 %) sur le shared pool est un signal avant-coureur d'
ORA-04031(impossible d'allouer de la mémoire partagée) — anticiper avant que l'erreur ne survienne en production. - À l'inverse, un pourcentage libre très élevé et stable dans la durée indique un pool surdimensionné : mémoire qui pourrait être réallouée ailleurs (buffer cache, autre pool) si le système est en gestion manuelle de la mémoire.
- Avec lAutomatic Shared Memory Management (ASMM,
SGA_TARGET) ou lAutomatic Memory Management (AMM,MEMORY_TARGET), Oracle rééquilibre lui-même les pools selon la charge — ce script reste utile pour vérifier que ce rééquilibrage automatique fonctionne comme attendu, mais les seuils manuels ci-dessus sont moins déterminants.
Voir aussi
- Perf sga usage — détail de tous les composants de la SGA, triés par taille.
- Perf shared pool memory — focus dédié sur le pourcentage libre du seul shared pool.