Chapitre 3
Chapitre 3
Chapitre 3
données Oracle
Architecture de base de données Oracle
Un serveur Oracle :
Chaque base de données Oracle en cours d'exécution est associée à une instance
Oracle. Lorsque vous démarrez une base sur un serveur de base de données, le
logiciel Oracle alloue une zone de mémoire partagée nommée SGA (System Global
Area) et lance plusieurs processus Oracle en arrière-plan.
Lorsqu'une instance est démarrée, le logiciel Oracle l'associe à une base de données
précise.
Ce processus est appelé montage de la base de données. La base peut alors être
ouverte et mise à disposition des utilisateurs autorisés.
Plusieurs instances peuvent s'exécuter simultanément sur le même ordinateur,
chacune ayant accès à sa propre base de données physique.
Structures mémoire Oracle
Structures mémoire Oracle (suite)
Les structures mémoire de base associées à une instance Oracle sont les
suivantes :
Mémoire SGA (System Global Area) : partagée par tous les processus serveur et
les processus en arrière-plan.
Mémoire PGA (Program Global Area) : propre à chaque processus serveur et
processus en arrière-plan.
Chaque processus dispose de sa mémoire PGA.
Structures mémoire Oracle (suite)
La zone de mémoire SGA comprend des informations de contrôle et des données
relatives à l'instance.
La mémoire SGA contient les structures de données suivantes :
Cache de tampons (buffer cache) de la base de données : met en mémoire cache les
blocs de données extraits de la base.
Tampon de journalisation (redo log buffer) : met en mémoire cache les informations de
journalisation (utilisées pour la récupération d'instance) jusqu'à ce qu'elles puissent être
écrites dans les fichiers de journalisation (redo log) physiques stockés sur le disque.
Zone de mémoire partagée :met en mémoire cache diverses structures pouvant être
partagées par les utilisateurs.
Structures mémoire Oracle (suite)
Zone de mémoire LARGE POOL : zone facultative qui fournit des espaces
importants d'allocation de mémoire à des processus volumineux, tels que les
opérations de sauvegarde et de récupération Oracle et les processus serveur
d'E/S.
Zone de mémoire Java : utilisée pour l'ensemble du code Java et des données
propres à la session, dans la JVM (Java Virtual Machine).
Zone de mémoire Streams : utilisée par Oracle Streams.
Structures mémoire Oracle (suite)
Une mémoire PGA (Program Global Area) est une zone de mémoire contenant
des données et des informations de contrôle pour chaque processus serveur.
Un processus serveur Oracle traite les demandes d'un client.
Chaque processus serveur dispose de sa propre mémoire PGA privée, qui est
créée lors du démarrage du processus serveur.
L'accès à la mémoire PGA est exclusivement réservé à ce processus serveur, qui
peut lire le contenu de la mémoire et écrire dans celle-ci par l'intermédiaire du
code Oracle.
Structures de processus
Gestion des instances Oracle
Gestion des instances Oracle (suite)
Un serveur de base de données Oracle est constitué d'une base et d'une instance
Oracle.
Une instance Oracle est composée de structures mémoire, appelées mémoire SGA
(System Global Area), et de processus en arrière-plan qui gèrent la plupart des
opérations qui ont lieu "en coulisses" lors de l'exécution d'une instance.
Processus Database Writer (DBWn) : écrit les blocs modifiés du cache de tampons
(buffer cache) de la base de données vers les fichiers de données présents sur le
disque.
Point de reprise (CKPT) : met à jour l'ensemble des fichiers de données et de contrôle
de la base de données afin d'indiquer le point de reprise (checkpoint) le plus récent.
Processus LGWR (Log Writer) : écrit les entrées de journalisation sur le disque.
Processus d'archivage (ARCn) : copie les fichiers de journalisation (fichier redo log)
dans l'emplacement de stockage d'archivage en cas de changement de fichier de
journalisation.
Structure de base de données physique
Structure de base de données physique
Fichiers trace : Chaque processus serveur et processus en arrière-plan peut écrire dans un fichier
trace associé.
Lorsqu'un processus détecte une erreur interne, il réalise dans son fichier trace un dump des
informations relatives à cette erreur.
Certaines informations écrites dans un fichier trace sont destinées à l'administrateur de base de
données, et d'autres au support technique Oracle.
Fichiers d'alertes :Il s'agit de fichiers trace spéciaux, dans lesquels sont consignées les alertes.
Le fichier d'alertes d'une base de données est un journal chronologique des messages et des
erreurs. Oracle recommande de consulter ces fichiers.
Tablespaces et fichiers de données
Tablespaces SYSTEM et SYSAUX
• Structures mémoire :
– Mémoire SGA (System Global Area) : cache de tampons de la base de
données, tampon de journalisation et zones de mémoire diverses
– Mémoire PGA (Program Global Area)
• Structures de processus :
– Processus utilisateur et processus serveur
– Processus en arrière-plan : SMON, PMON, DBWn, CKPT, LGWR,
ARCn, etc.
• Structures de stockage :
– Structures logiques : bases de données, schémas, tablespaces,
segments, extents et blocs Oracle
– Structures physiques : fichiers pour les données, paramètres et
informations de journalisation, et blocs du système d'exploitation