Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

AdminBDoracle Chap1

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 17

Administration BD Oracle 3ème BI, GL, SR - ITBS

Cours Administration BD Oracle ITBS - 3ème BI, GL, SR Mme Sonia Guerbouj

Chapitre 1

Architecture de la Base
de Données Oracle

Année Universitaire 2021 - 2022

2 PLAN
1 Présentation Générale
2 La base de données Oracle
2.1 Les fichiers de contrôles :
2.2 Les fichiers Redo Log
2.3 Les fichiers de données
3 L'instance
3.1 La SGA (System Global Area)
3.1.1 La Shared Pool
3.1.1.1 Les zones de requêtes partagées (Shared SQL Areas)
3.1.1.2 Le cache mémoire du dictionnaire des données (Data Dictionary Cache)
3.1.2 Le Data Buffer Cache
3.1.3 Le Redo Log Buffer
Mme Sonia Guerbouj

3.2 Les processus d'arrière-plan


4 Processus Listener, serveur et utilisateur
5 La PGA (Program Global Area)

Mme Sonia Guerbouj 1


Administration BD Oracle 3ème BI, GL, SR - ITBS

3 1- Présentation générale

Oracle est un Système de Gestion de Base de


Données Relationnelles (SGBDR) disponible sur
un grand nombre de plates-formes (Unix, Linux,
Windows,…).
Un serveur Oracle offre une méthode de gestion
des informations complète et intégrée qui n’est
pas très différente d’une plateforme à l’autre.
Mme Sonia Guerbouj

Il est constitué d’une instance et d’une base de


données Oracle

4 1- Présentation générale

Une instance Oracle est composée de


structures mémoires (SGA) et de processus
d'arrière-plan.
C’est l'instance qui permet d'accéder à la base
de données Oracle.
Elle ne peut ouvrir qu’une seule base de
données.
Mme Sonia Guerbouj

Mme Sonia Guerbouj 2


Administration BD Oracle 3ème BI, GL, SR - ITBS

5 2- Base de Données Oracle

Une base de données Oracle est un ensemble


de fichiers.
Elle est composée essentiellement de 3 types de
fichiers qui sont :
les fichiers de contrôle,
les fichiers Redo Log
les fichiers de données.
Mme Sonia Guerbouj

6 2.1- Fichiers de contrôle

Ils enregistrent les structures physiques et les


états de la base de données tels que :
Le nom de la base de données, sa date de création
Le nom et emplacement de tous les fichiers de
données et les fichiers Redo Log de la base de
données,
Mme Sonia Guerbouj

Mme Sonia Guerbouj 3


Administration BD Oracle 3ème BI, GL, SR - ITBS

7 2.1- Fichiers de contrôle

Le fichier de contrôle est requis pour monter,


ouvrir et accéder à la base de données,
Il faut un minimum de 2 fichiers de contrôle
multiplexés sur deux disques différents,
Le paramètre CONTROL_FILES identifie les
fichiers de contrôle.
Mme Sonia Guerbouj

8 2.2- Fichiers Redo Log

Les fichiers Redo Log ou fichiers de journalisation


enregistrent l'historique de toutes les manipulations
apportées à la base de données Oracle afin de
pouvoir la restaurer en cas de panne.
En cas de panne, la base de données Oracle est
capable de simuler l'ensemble des commandes
n'ayant pas été sauvegardées pour rétablir son
contenu.
Mme Sonia Guerbouj

Mme Sonia Guerbouj 4


Administration BD Oracle 3ème BI, GL, SR - ITBS

9 2.2- Fichiers Redo Log

Tout comme les fichiers de données, les fichiers


Redo log sont dans un format propriétaire à
Oracle.
Il faut un minimum de deux groupes de fichiers
Redo Log pour faire fonctionner une base
Oracle.
C’est le processus LGWR (Log Writer)qui se
Mme Sonia Guerbouj

charge de l'écriture simultanée dans ces fichiers.

10 2.2- Fichiers Redo Log

Les fichiers Redo


Log sont remplis
selon un mode
circulaire :
Mme Sonia Guerbouj

Mme Sonia Guerbouj 5


Administration BD Oracle 3ème BI, GL, SR - ITBS

11 2.3- Les fichiers de Données

Les fichiers de données contiennent toutes les


données des utilisateurs de la base Oracle et
peuvent être de 2 types :
Le dictionnaire de données
Les données des utilisateurs
Ces fichiers occupent la majeure partie de la
base de données, leur taille peut varier entre
Mme Sonia Guerbouj

quelques mégaoctets et plusieurs giga-octets.

12 2.3- Les fichiers de Données

C’est le processus DBWR (Database Writer) qui


écrit dans ces fichiers. Tandis que ce sont les
processus serveur qui lisent les données.
Les données sont écrites selon un format
propriétaire à Oracle,
Pour modifier les informations de la base qui sont
contenues dans les fichiers de données, il faut
Mme Sonia Guerbouj

utiliser les commandes SQL.

Mme Sonia Guerbouj 6


Administration BD Oracle 3ème BI, GL, SR - ITBS

13 2.3- Les fichiers de Données

Tous les fichiers de données sont remplis dans un


format spécifique : Le bloc Oracle.
La taille d’un bloc Oracle est définie lors de la
création de la base et il n'est plus possible de la
modifier.
Mme Sonia Guerbouj

14 3- L’instance Oracle

C’est la combinaison de la SGA et des


processus d'arrière-plan de la base de données.
Quand une instance est démarrée, les tampons
mémoire de la SGA sont alloués et les processus
d'arrière-plan sont créés.
Une fois l’instance est démarrée, elle monte la
base de données (les fichiers), puis l’ouvre.
Pour connaître la taille de la SGA :
Mme Sonia Guerbouj

Select * from v$sga;

Mme Sonia Guerbouj 7


Administration BD Oracle 3ème BI, GL, SR - ITBS

15 3.1- System Global Area (SGA)

La SGA(System Global Area) représente la zone


mémoire d'une instance.
C'est elle qui assure le partage des données
entre les différents utilisateurs. Toute donnée lue
ou modifiée transite par la SGA.
La totalité du fonctionnement intime de la SGA
n’est pas entièrement divulgué par Oracle, mais
il est important d’en comprendre les fonctions
Mme Sonia Guerbouj

majeures, pour faire face à des problèmes de


performance.

16 3.1- System Global Area (SGA)

La SGA est composée des principales structures


mémoires suivantes :
la Shared Pool
le Data Buffer Cache
le Redo Log Buffer
Mme Sonia Guerbouj

Mme Sonia Guerbouj 8


Administration BD Oracle 3ème BI, GL, SR - ITBS

17 3.1.1- Shared Pool

La Shared Pool contient des structures parmi les


plus importantes :
les zones de requêtes partagées : Shared SQL Area et
Shared PL/SQL Area
le cache du dictionnaire des données
Mme Sonia Guerbouj

18 3.1.1.1- Zone de requêtes partagées

Les zones de requêtes partagées contiennent


l’information utilisée pour exécuter un ordre SQL.
Les processus Oracle partagent les informations
des commandes SQL. Par conséquent, le
prochain ordre identique sera dirigé vers le
même emplacement de mémoire.
Mme Sonia Guerbouj

Mme Sonia Guerbouj 9


Administration BD Oracle 3ème BI, GL, SR - ITBS

19 3.1.1.2- Data Dictionnary Cache

Cette zone mémoire contient le dictionnaire des


données qui est un ensemble de tables et de
vues contenant des informations sur les
structures et les utilisateurs de la base de
données.
Les tables et vues qui composent le dictionnaire
de données sont la propriété de l'utilisateur SYS.
Mme Sonia Guerbouj

20 3.1.1.2- Data Dictionnary Cache

Parmi les données stockées dans le dictionnaire


de données, on trouve :
les noms de toutes les tables et les vues présentes
dans la base de données,
les noms et les types de données des colonnes
contenues dans les tables et les vues de la base de
données,
les privilèges de tous les utilisateurs
Mme Sonia Guerbouj

Mme Sonia Guerbouj 10


Administration BD Oracle 3ème BI, GL, SR - ITBS

21 3.1.2- Data Buffer Cache

 Cette zone comporte toutes les données lues par un


SELECT ou modifiées par un UPDATE, INSERT, DELETE.
 Ces données en provenances de la base de
données ou destinées à y être écrites transitent
avant par le Data Buffer Cache.
 La taille du Data Buffer Cache (cache des buffers
de la base de données) est déterminée par le
paramètre DB_CACHE_SIZE.
Mme Sonia Guerbouj

22 3.1.3- Redo Log Buffer

 Le Redo Log Buffer est un tampon contenant les


modifications apportées sur la base de données.
 Les Redo Log Buffer sont conçus pour assurer des
écritures très rapides dans les fichiers Redo Log.
 Dès qu’il y a une modification des données (INSERT,
UPDATE, DELETE), elle est écrite sur les blocs de
donnés en mémoire, qui sont simultanément copiés
dans les Redo Log Buffer.
Mme Sonia Guerbouj

Mme Sonia Guerbouj 11


Administration BD Oracle 3ème BI, GL, SR - ITBS

23 3.1.3- Redo Log Buffer

 Dès qu'un COMMIT ou un ROLLBACK est utilisé, le


processus d'arrière-plan LGWR écrit les données du
Redo Log Buffer (non encore transférée) dans les
fichiers Redo Log. L'utilisateur n'a pas à attendre
l'écriture des éléments nouveaux dans les fichiers de
données (ce qui peut être long).
 Ce travail est effectué périodiquement en arrière
plan, par le processus DBWR.
Mme Sonia Guerbouj

24 3.2- Processus d’arrière plan

Le fonctionnement de la base Oracle est assuré


par un ensemble de processus qui réalisent
différentes tâches.
On distingue généralement 3 types de
processus :
les processus d'arrière-plan (background processes),
les processus serveurs (server processes),
les processus utilisateurs (user processes)
Mme Sonia Guerbouj

Mme Sonia Guerbouj 12


Administration BD Oracle 3ème BI, GL, SR - ITBS

25 3.2- Processus d’arrière plan

Parmi les processus d'arrière-plan qui assurent


le fonctionnement interne du SGBD Oracle, il
y a 5 processus indispensables pour le
fonctionnement minimal d'une base Oracle.
Si l'un d'eux s'arrête, la base de données n'est
plus opérationnelle.
Mme Sonia Guerbouj

26 3.2- Processus d’arrière plan


Mme Sonia Guerbouj

Mme Sonia Guerbouj 13


Administration BD Oracle 3ème BI, GL, SR - ITBS

27 3.2- Processus d’arrière plan

 DBWR (DataBase Writer), le processus chargé d'écrire le


contenu des data buffers dans les fichiers de données
 LGWR (Log Writer), le processus chargé d'écrire le contenu
des log buffers dans les fichiers Redo Log
 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
 PMON (Process Monitor), le processus chargé de nettoyer les
Mme Sonia Guerbouj

ressources, les verrous et les processus utilisateurs non utilisés


 CKPT (Checkpoint), le processus chargé des checkpoints
(points de restauration)

28 4- Processus Listener, Serveur et Utilisateur

 Le listener (processus d'écoute) n’est généralement


pas compris dans la liste des processus indispensables
au fonctionnement d’Oracle. Pourtant, il doit être
lancé pour permettre d’établir des connexions client-
serveur avec la base de données. Le listener peut être
considéré comme une grande oreille qui écoute les
demandes de connexion aux services Oracle.
 Son lancement est indépendant de la base de
Mme Sonia Guerbouj

données et il possède ses propres fichiers de


configuration.

Mme Sonia Guerbouj 14


Administration BD Oracle 3ème BI, GL, SR - ITBS

29 4- Processus Listener, Serveur et Utilisateur

Dans une configuration de serveur dédié (la plus


utilisée), le Listener lance pour chaque utilisateur
un nouveau processus serveur et lui cède le
contrôle de la session du client.
Chaque connexion client est servie par son
processus serveur dédié.
Mme Sonia Guerbouj

30 4- Processus Listener, Serveur et Utilisateur

C’est le processus serveur qui se connecte à


l'instance Oracle pour servir le processus
utilisateur durant toute la session du client.
Le processus utilisateur n'entre pas directement
en interaction avec le serveur Oracle. Le
processus serveur interagit avec le serveur
Oracle, répond aux demandes de l’utilisateur et
lui renvoie les résultats.
Mme Sonia Guerbouj

Mme Sonia Guerbouj 15


Administration BD Oracle 3ème BI, GL, SR - ITBS

31 Connexion au serveur Oracle


Mme Sonia Guerbouj

32 Connexion au serveur Oracle : Etapes

1. Le client contacte le listener Oracle en indiquant l’instance


à laquelle il souhaite se connecter (demande d’un nom de
service).
2. Le listener démarre un processus serveur dédié.
3. Le listener envoie un accusé de réception au client avec
l'adresse de son processus serveur dédié.
4. Le client établit une connexion avec le processus serveur.
5. Le processus serveur se connecte à l'instance Oracle pour
Mme Sonia Guerbouj

le compte du processus utilisateur (création d’une session


utilisateur)

Mme Sonia Guerbouj 16


Administration BD Oracle 3ème BI, GL, SR - ITBS

33 5- Program Gloal Area

La PGA est une zone mémoire allouée pour le


fonctionnement de chaque processus
utilisateur.
Le rôle de la SGA est de permettre un partage
de données entre tous les utilisateurs. Il existe
néanmoins d’autres informations qui n’ont pas
besoin d’être partagées. C’est le cas des
informations contenues dans la zone PGA
Mme Sonia Guerbouj

(Program Global Area).

34 5- Program Gloal Area

 Une connexion à une base Oracle engendre donc la


création d’un processus utilisateur et de sa mémoire
associée, la PGA.
 La PGA est toujours située sur le serveur qui héberge la
base de données.
 Elle stocke des informations concernant les variables
utilisées, la session utilisateur et l’état des transactions
en cours. Elle contient également la zone mémoire
dans laquelle s’effectue le tri des données utilisateur.
Mme Sonia Guerbouj

Mme Sonia Guerbouj 17

Vous aimerez peut-être aussi