La mémoire (1)
- La SGA (Système Global Area)
- Zone partagée par tous les utilisateurs de la base de données
- Allouée au démarrage de l'instance en mémoire principale : doit-être la plus grosse possible.
- Son but est d'économiser les E/S. Elle contient :
- le cache de données (database buffer cache)
- le cache de reprise (redo log buffer) pour les changements récents
- le cache d'exécution partagé (shared pool) pour les requêtes SQL et PL/SQl. Contient le dictionnaire de données en cache.
La mémoire (2)
- La PGA (Program Global Area)
- Zone d'exécution des processus du serveur
- Allouée au lancement de chaque processus
Les processus de fond serveur
- Exécutent des actions asynchrones d'écriture et de contrôle
- DBWn (Database Writer) - Ecrit le contenu du cache de données dans les fichiers de données
- Lorsque la place manque en SGA
- De façon périodique, en mettant à jour le point de restauration dans les fichiers de log
- on peut en créer plusieurs : DBW0, DBW1, ... , DBWj
- LGWR (Log Writer) - Ecrit le contenu du cache de reprise dans les fichiers de reprise
- en cas de ``commit'' d'un utilisateur
- Toutes les trois secondes
- Quand le cache de reprise est plein au tiers
- Quand un processus DBWn décharge des données modifiées
Les processus de fond serveur (cont.)
- CKPT (Chekpoint)
- Pour assurer la synchronisation et la cohérence des données
- SMON (System Monitor)
- Effectue la restauration lors de reprise après panne
- Nettoie les segments temporaires
- Fusionne certains extents libres contigüe
- PMON (Process Monitor)
- Pour gérer les pannes des processus clients
- RECO (Recover)
- Pour les reprises après panne de transactions distribuées
- ARCn (Archiver)
- Pour l'archivage, lorsqu'il est activé
- ...
fabien
2007-11-22