Perf sga usage
Aller à la navigation
Aller à la recherche
| Fiche express | |
|---|---|
| Type | Script SQL*Plus de diagnostic |
| Domaine | Performance |
| Voir aussi | Perf sga free pool · Perf shared pool memory |
Perf sga usage liste tous les composants mémoire de la SGA (v$sgastat), triés du plus gros au plus petit, avec leur poids relatif en pourcentage de la SGA totale (v$sga).
Script
SET LINESIZE 145
SET PAGESIZE 9999
SET FEEDBACK OFF
SET VERIFY OFF
COLUMN bytes FORMAT 999,999,999
COLUMN percent FORMAT 999.99
BREAK ON report
COMPUTE SUM OF bytes ON report
SELECT
a.name
, a.bytes
, ROUND(a.bytes / b.sum_bytes * 100, 2) percent
FROM
v$sgastat a
, (SELECT SUM(value) sum_bytes FROM v$sga) b
ORDER BY bytes DESC
/
Le calcul du pourcentage dans le script d'origine (a.bytes/(b.sum_bytes*100)) divisait par sum_bytes*100 au lieu de multiplier le ratio par 100 : le résultat affiché était donc 10 000 fois trop petit (une valeur attendue de 12,34 % s'affichait comme 0,0012). La formule ci-dessus (a.bytes / b.sum_bytes * 100) corrige ce calcul.
Interprétation
- Vue utile pour repérer rapidement quel composant domine la SGA (souvent le buffer cache ou le shared pool selon le profil de charge) avant d'ajuster un paramètre de mémoire précis.
- Une ligne
free memoryimportante dans un pool précis est normale en usage courant ; c'est sa disparition progressive dans la durée qui doit alerter (voir Perf sga free pool pour un suivi ciblé par pool). - Sur une instance en ASMM/AMM, cette photo instantanée varie dans le temps : Oracle redistribue la mémoire entre composants selon la charge — répéter la mesure à différents moments plutôt que se fier à un seul relevé.
Voir aussi
- Perf sga free pool — même logique mais agrégée par pool, avec le pourcentage libre.
- Perf shared pool memory — focus dédié sur le shared pool.
- Perf performance snapshot — reprend une partie de ces informations dans un rapport de synthèse plus large.