Documente Academic
Documente Profesional
Documente Cultură
Oracle est fourni avec de nombreux outils permettant de simplifier l'administration de la base
de données. Parmi ces outils, les plus connus sont :
Oracle Manager (SQL*DBA)
NetWork Manager
Oracle Enterprise Manager
Import/Export : un outil permettant d'échanger des données entre deux bases Oracle
Architecture du SGB Oracle :
Le fonctionnement de la base Oracle est régi par un certain nombre de processus chargés en
mémoire.
On distingue généralement deux types de processus :
les processus utilisateurs (appelés aussi user process ou noyau oracle)
les processus systèmes (oracle process).
Un processus utilisateur est créé pour chaque programme exécuté par un utilisateur (par
exemple Oracle Forms ou Server Manager) afin de fournir l'environnement nécessaire à
l'exécution de celui-ci. Le processus utilisateur ainsi créé communique avec les processus
systèmes à travers le programme interface.
On distingue deux types de processus utilisateurs :
Oracle Server Code, aussi appelé noyau d'Oracle, est chargé d'interpréter et
d'exécuter les requêtes SQL, ainsi que de gérer la mémoire et les fichiers de données
Code spécifique de l'outil, l'implémentation qui exécute réellement les commandes
SQL.
Les processus Oracle (processus système) se classent en deux catégories :
Les processus serveurs (process server) gérant les requêtes des utilisateurs. Le
processus serveur est chargé de la communication entre la SGA et le processus utilisateur. Il
permet ainsi d'analyser et d'exécuter les requêtes SQL des utilisateurs, de lire les fichiers de
données et de placer les blocs de données correspondants dans la SGA.
Les processus d'arrière-plan (background process) chargés d'assurer le
fonctionnement interne du SGBD Oracle.
Chaque processus a pour nom ora_nomduprocessus_SID où SID représente le nom de
l'instance à laquelle le processus est associé.
Les 4 principaux processus systèmes sont :
DBWR (DataBase Writer ou Dirty Buffer Writer), le processus chargé d'écrire le
contenu des buffers dans les fichiers de données
LGWR (Log Writer), le processus chargé d'écrire le contenu des buffers dans les
fichiers Redo Log
PMON (Process Monitor), le processus chargé de nettoyer les ressources, les verrous
et les processus utilisateurs non utilisés
SMON (System Monitor), le processus chargé de vérifier la cohérence de la base de
données et éventuellement sa restauration lors du démarrage si besoin
Il existe également d'autres processus d'importance secondaire :
CKPT (CheckPoint), inscrit les informations de point de reprise dans les fichiers de
contrôles et dans l'entête de chaque fichier de données. C'est ce point de reprise qui permet de
rendre cohérent les fichiers de contrôles et les fichiers de données, indispensable pour un
processus de récupération.
RECO (Recoverer), il s'agit d'un processus optionnel permettant de résoudre les
transactions interrompues brutalement dans un système de bases de données distribuées (par
exemple un système de réplication de bases de données)
ARCH (Archiver). Ce processus est optionnel et n'existe qu'en modeARCHIVELOG.
Il permet de dupliquer les fichiers Redo-Log dans un espace d'archivage.
Dnnnn (Dispatcher, nnnn représente une suite de nombre entiers) : Ce processus est
optionnel et n'est présent que dans les configurations MTS (multi-threaded server). Il permet
de router les requêtes des potes clients-serveur distant vers les autres serveurs. Il existe au
moins un processus Dnnnn pour chaque protocole de communication
Snnnn (Server, nnnn représente une suite de nombre entiers) : Ce processus est n'est
également présent que dans les configurations MTS. Il permet de recevoir les demandes de
connexions distantes envoyées par le processus Dnnnn d'un serveur distant.
LCKn (Lock) est un processus de verrouillage utilisé lorsque Oracle Parallel Server
est installé.
Les fichiers physiques d'une base Oracle permettent de stocker de manière persistante les
données manipulées par Oracle, tandis que la mémoire sert à optimiser la vitesse de
fonctionnement de la base de donné.
On distingue généralement deux types de fichiers :
Les fichiers servant à stocker les informations de la base. Tous ces fichiers sont des
fichiers binaires, ce qui signifie qu'ils sont inexploitables avec un éditeur de texte.
Les fichiers destinés à la configuration et au fonctionnement de la base Oracle
Oracle a défini une architecture permettant de définir une méthode d'organisation standard des
fichiers de la base Oracle. Cette architecture est nommée OFA (Optimal Flexible
Architecture).
Les fichiers d'une base de données Oracle sont les suivants :
Les fichiers de données (dont l'extension est .dbf). Ces fichiers contiennent
l'ensemble des données de la base (les tables, les vues, les procédures stockées, ...).
Les fichiers Redo Log (dont l'extension est .rdo ou .log). Ces fichiers contiennent
l'historique des modifications effectuées sur la base de données
Les fichiers de contrôle (dont l'extension est .ctl). Ces fichiers permettent de stocker
les informations sur l'état de la base de données (emplacement des fichiers, dates de création,
...)
Une base de données Oracle nécessite au minimum un fichier de données, deux fichiers redo
Log et un fichier de contrôle.
Le PGA est défini par une zone de mémoire non partagée contenant des informations d'un
utilisateur, elle est allouée lors de l'ouverture d"une session
Les process
Process utilisateurs
Process server
Les process server sont créé par Oracle Server pour répondre aux requetes effectuées
par le process utilisateur. Donc sa fonction primaire est de communiquer avec les
process utilisateur et interargir avec Oracle pour répondre aux requêtes.
Process détachés
Les process détachés sont utilisé par Oracle pour réalisés des tâches pour les
utilisateurs de la base, nous pouvons distinguer 4 process indispensables :
- Process monitor : Restaure un process utilisateur quand celui-ci echoue.
- System monitor : Restaure la section au démarrage et créé et supprime les segments
temporaires.
- Log writter : Extrait les données du buffer redo log pour les mettre dans les fichiers
redo log.
- Database writter : Ecrit les données du buffer de la base sur les fichiers de données
Le SGA a pour rôle de stocker les données lues sur le disque dur afin de les pouvoir partager entre les
différents processus.