Académique Documents
Professionnel Documents
Culture Documents
Khaled Jouini
j.khaled@gmail.com
Institut Suprieur d'Informatique et des Technologies de Communication
2012-2013
c (IsitCom)
1 / 149 Khaled Jouini
2012-2013
1 / 149
Syllabus du cours
Pr-requis
Modle relationnel (structure, contraintes, SQL)
Architecture d'un SGBDR, connaissances utiles, mais pas
indispensables
Objectifs
Connatre les tches d'un Administrateur de bases de donnes
Connatre les concepts et les points cls de l'architecture d'Oracle
Savoir eectuer les principales tches d'administration sous Oracle
c (IsitCom)
2 / 149 Khaled Jouini
2012-2013
2 / 149
Syllabus du cours
SQL la maison
Oracle Database 11g Personal Edition ou ( dfaut) Oracle Database
11g Express Edition.
http://www.oracle.com/technetwork/indexes/downloads/index.html
c (IsitCom)
3 / 149 Khaled Jouini
Ch.
2012-2013
3 / 149
Introduction gnrale
c (IsitCom)
4 / 149 Khaled Jouini
2012-2013
4 / 149
Introduction gnrale
Prsentation d'Oracle
c (IsitCom)
4 / 149 Khaled Jouini
2012-2013
4 / 149
Introduction gnrale
Prsentation d'Oracle
Prsentation d'Oracle
Oracle : leader mondial des SGBDRs, avec une part de march de
48,6% (Gartner Group)
Commercialise dirents produits : Oracle DataBase, Oracle
Developer Suite, Oracle Application Server, etc.
Oracle DataBase : Serveur de base de donnes produit principal
d'Oracle pass de la version 1 (1977) la version 11g (2010).
c (IsitCom)
4 / 149 Khaled Jouini
2012-2013
4 / 149
Introduction gnrale
Serveur de BD Oracle
c (IsitCom)
5 / 149 Khaled Jouini
2012-2013
5 / 149
Introduction gnrale
Serveur de BD Oracle
Oracle DataBase
Commercialisation selon trois gammes : personnelle, standard et entreprise.
Edition Personnelle (Personal Edition)
Monolicence
Destine aux dveloppeurs
c (IsitCom)
5 / 149 Khaled Jouini
2012-2013
5 / 149
Introduction gnrale
Serveur de BD Oracle
Oracle DataBase
Edition Entreprise (Entreprise Edition)
Fonctionnalits supplmentaires pour l'amlioration de la disponibilit,
scurit, administration, etc.
Real Application Clusters (RAC): serveurs en cluster (BDs rparties)
Oracle Partitioning : partitionnement des tables et des index
Advanced Security Option : cryptage (essentiellement)
Oracle Tuning Pack : outil d'aide l'optimisation des performances
Oracle Olap and datamining : outils d'aide la mise en place de
systmes dcisionnels
etc.
c (IsitCom)
6 / 149 Khaled Jouini
2012-2013
6 / 149
Introduction gnrale
Serveur de BD Oracle
La base de donnes
L'instance
c (IsitCom)
7 / 149 Khaled Jouini
2012-2013
7 / 149
Introduction gnrale
Serveur de BD Oracle
c (IsitCom)
8 / 149 Khaled Jouini
2012-2013
8 / 149
Introduction gnrale
Serveur de BD Oracle
Catgories de BD
BDs transactionnelles (OLTP
c (IsitCom)
9 / 149 Khaled Jouini
2012-2013
9 / 149
Introduction gnrale
Rles du DBA
c (IsitCom)
10 / 149 Khaled Jouini
2012-2013
10 / 149
Introduction gnrale
Rles du DBA
Rles du DBA
1 Installation et conguration du SGBD et des applications clientes (rle
technique)
c (IsitCom)
10 / 149 Khaled Jouini
2012-2013
10 / 149
Introduction gnrale
c (IsitCom)
11 / 149 Khaled Jouini
2012-2013
11 / 149
Introduction gnrale
outils Oracle
SQL*Plus :
2012-2013
11 / 149
Introduction gnrale
Plan du cours
c (IsitCom)
12 / 149 Khaled Jouini
2012-2013
12 / 149
Introduction gnrale
Plan du cours
Introduction gnrale
c (IsitCom)
12 / 149 Khaled Jouini
2012-2013
12 / 149
Bloc Oracle
Extension
Segment
Tablespace
Gestion des tablespaces
c (IsitCom)
13 / 149 Khaled Jouini
2012-2013
13 / 149
Introduction
Bloc Oracle
Extension
Segment
Tablespace
Gestion des tablespaces
c (IsitCom)
13 / 149 Khaled Jouini
2012-2013
13 / 149
Introduction
2012-2013
13 / 149
Introduction
Disque dur
Mmoire persistante : ne perd pas son contenu lorsque la machine est
teinte
Grande capacit de stockage par rapport la mmoire vive
Lent : 1 accs au disque dur 1 million d'accs la mmoire vive
c (IsitCom)
14 / 149 Khaled Jouini
2012-2013
14 / 149
Introduction
SGBD
Ce chapitre...
c (IsitCom)
15 / 149 Khaled Jouini
2012-2013
15 / 149
Introduction
SGBD
Ce chapitre...
c (IsitCom)
15 / 149 Khaled Jouini
2012-2013
15 / 149
Introduction
SGBD
Ce chapitre...
c (IsitCom)
15 / 149 Khaled Jouini
2012-2013
15 / 149
Introduction
SGBD
Ce chapitre...
c (IsitCom)
15 / 149 Khaled Jouini
2012-2013
15 / 149
Introduction
SGBD
Ce chapitre...
c (IsitCom)
15 / 149 Khaled Jouini
2012-2013
15 / 149
Bloc Oracle
Extension
Segment
Tablespace
Gestion des tablespaces
c (IsitCom)
16 / 149 Khaled Jouini
2012-2013
16 / 149
Ensemble de plateaux
tournant vitesse constante
autour d'un axe
+
ttes de L/E se dplaant
perpendiculairement l'axe
Plateau : compos de pistes
concentriques
Piste : divise en blocs
contenant les donnes
c (IsitCom)
16 / 149 Khaled Jouini
2012-2013
16 / 149
Accs un bloc
Par son adresse :
Temps de lecture
1
2012-2013
17 / 149
2. Optimisation - a. Proximit
Dnition (Proximit)
Mettre dans un nombre minimal de blocs les donnes qui sont
frquemment utilises en mme temps
Ex. les clients d'une mme ville
Permet de rduire le
c (IsitCom)
18 / 149 Khaled Jouini
2012-2013
18 / 149
2. Optimisation - a. Proximit
Dnition (Proximit)
Mettre dans un nombre minimal de blocs les donnes qui sont
frquemment utilises en mme temps
Ex. les clients d'une mme ville
Permet de rduire le
c (IsitCom)
18 / 149 Khaled Jouini
2012-2013
18 / 149
2. Optimisation - b. Regroupement
Dnition (Regroupement)
Mettre dans des blocs conscutifs les donnes qui ont de grandes chances
d'tre utilises en mme temps
Ex. les tuples d'une mme relation
Permet de rduire le dlai
le temps de latence
Proximit et regroupement
c (IsitCom)
19 / 149 Khaled Jouini
2012-2013
19 / 149
2. Optimisation - b. Regroupement
Dnition (Regroupement)
Mettre dans des blocs conscutifs les donnes qui ont de grandes chances
d'tre utilises en mme temps
Ex. les tuples d'une mme relation
Permet de rduire le dlai
le temps de latence
Proximit et regroupement
c (IsitCom)
19 / 149 Khaled Jouini
2012-2013
19 / 149
2. Optimisation - b. Regroupement
Dnition (Regroupement)
Mettre dans des blocs conscutifs les donnes qui ont de grandes chances
d'tre utilises en mme temps
Ex. les tuples d'une mme relation
Permet de rduire le dlai
le temps de latence
Proximit et regroupement
c (IsitCom)
19 / 149 Khaled Jouini
2012-2013
19 / 149
Exercice
Un SGBD doit lire 5 chanes de caractres de 1000 octets chacune.
Caractristiques du disque : Taille de bloc : 4096 octets, Dlai de
positionnement : 6 ms, Temps de latence moyen : 3 ms, Temps de transfert
: 1 ms
Temps ncessaire pour lire les chanes en supposant tour tour que :
a Les chanes se trouvent dans des blocs dirents rpartis alatoirement sur le
disque
b les chanes se trouvent dans des blocs dirents se trouvant les uns cot
des autres sur une mme piste
c les chanes se trouvent cot les unes des autres dans des blocs conscutifs.
c (IsitCom)
20 / 149 Khaled Jouini
2012-2013
20 / 149
c (IsitCom)
21 / 149 Khaled Jouini
2012-2013
21 / 149
c (IsitCom)
21 / 149 Khaled Jouini
2012-2013
21 / 149
c (IsitCom)
21 / 149 Khaled Jouini
2012-2013
21 / 149
le moins rcemment lu
c (IsitCom)
22 / 149 Khaled Jouini
Bc
2012-2013
22 / 149
le moins rcemment lu
c (IsitCom)
22 / 149 Khaled Jouini
Bc
2012-2013
22 / 149
le moins rcemment lu
c (IsitCom)
22 / 149 Khaled Jouini
Bc
2012-2013
22 / 149
le moins rcemment lu
c (IsitCom)
22 / 149 Khaled Jouini
Bc
2012-2013
22 / 149
3. Fichiers et enregistrements
Le stockage des donnes sur disque : organis au moyen de
chiers
Fichier
Occupe un ou plusieurs blocs pouvant tre disperss sur le disque
Compos d'un ensemble d'enregistrements (records)
c (IsitCom)
23 / 149 Khaled Jouini
2012-2013
23 / 149
3. Fichiers et enregistrements
Le stockage des donnes sur disque : organis au moyen de
chiers
Fichier
Occupe un ou plusieurs blocs pouvant tre disperss sur le disque
Compos d'un ensemble d'enregistrements (records)
c (IsitCom)
23 / 149 Khaled Jouini
2012-2013
23 / 149
Bloc Oracle
Extension
Segment
Tablespace
Gestion des tablespaces
c (IsitCom)
24 / 149 Khaled Jouini
2012-2013
24 / 149
Paramtre DB_BLOCK_SIZE
Pour consulter la taille d'un bloc Oracle partir de SQL*PLUS :
SQL> show parameter DB_BLOCK_SIZE
c (IsitCom)
24 / 149 Khaled Jouini
2012-2013
24 / 149
Paramtre DB_BLOCK_SIZE
Pour consulter la taille d'un bloc Oracle partir de SQL*PLUS :
SQL> show parameter DB_BLOCK_SIZE
c (IsitCom)
24 / 149 Khaled Jouini
2012-2013
24 / 149
Paramtre DB_BLOCK_SIZE
Pour consulter la taille d'un bloc Oracle partir de SQL*PLUS :
SQL> show parameter DB_BLOCK_SIZE
c (IsitCom)
24 / 149 Khaled Jouini
2012-2013
24 / 149
Paramtre DB_BLOCK_SIZE
Pour consulter la taille d'un bloc Oracle partir de SQL*PLUS :
SQL> show parameter DB_BLOCK_SIZE
c (IsitCom)
24 / 149 Khaled Jouini
2012-2013
24 / 149
c (IsitCom)
25 / 149 Khaled Jouini
2012-2013
25 / 149
Chanage
Solution :
c (IsitCom)
26 / 149 Khaled Jouini
2012-2013
26 / 149
Chanage
Solution :
c (IsitCom)
26 / 149 Khaled Jouini
2012-2013
26 / 149
Chanage
Solution :
c (IsitCom)
26 / 149 Khaled Jouini
2012-2013
26 / 149
Chanage
Solution :
c (IsitCom)
26 / 149 Khaled Jouini
2012-2013
26 / 149
PCTFREE=
2012-2013
27 / 149
PCTFREE=
2012-2013
27 / 149
c (IsitCom)
28 / 149 Khaled Jouini
2012-2013
28 / 149
c (IsitCom)
28 / 149 Khaled Jouini
2012-2013
28 / 149
c (IsitCom)
28 / 149 Khaled Jouini
2012-2013
28 / 149
c (IsitCom)
29 / 149 Khaled Jouini
2012-2013
29 / 149
c (IsitCom)
29 / 149 Khaled Jouini
2012-2013
29 / 149
c (IsitCom)
29 / 149 Khaled Jouini
2012-2013
29 / 149
c (IsitCom)
29 / 149 Khaled Jouini
2012-2013
29 / 149
c (IsitCom)
29 / 149 Khaled Jouini
2012-2013
29 / 149
c (IsitCom)
29 / 149 Khaled Jouini
2012-2013
29 / 149
c (IsitCom)
29 / 149 Khaled Jouini
2012-2013
29 / 149
c (IsitCom)
29 / 149 Khaled Jouini
2012-2013
29 / 149
signicativement;
primordial
2012-2013
30 / 149
signicativement;
primordial
2012-2013
30 / 149
table _name
PCTFREE
int ;
ALTER TABLE
table _name
PCTUSED
int ;
c (IsitCom)
31 / 149 Khaled Jouini
2012-2013
31 / 149
2. Extension
Extension (Extent)
Ensemble de blocs Oracle
donnes
c (IsitCom)
32 / 149 Khaled Jouini
2012-2013
32 / 149
2. Extension
Extension (Extent)
Ensemble de blocs Oracle
donnes
c (IsitCom)
32 / 149 Khaled Jouini
2012-2013
32 / 149
3. Segment - a. Dnition
Segment (Segment)
Ensemble de toutes les extensions stockant les donnes d'un mme
type
Il existe quatre types de segment
tablespaces
2012-2013
33 / 149
Exemple :
c (IsitCom)
34 / 149 Khaled Jouini
2012-2013
34 / 149
Exemple :
c (IsitCom)
34 / 149 Khaled Jouini
2012-2013
34 / 149
Exemple :
c (IsitCom)
34 / 149 Khaled Jouini
2012-2013
34 / 149
TRANSACTION)
3 En cas de
2012-2013
35 / 149
TRANSACTION)
3 En cas de
2012-2013
35 / 149
TRANSACTION)
3 En cas de
2012-2013
35 / 149
4. Tablespace
Tablespace
Espace logique permettant d'organiser "logiquement" une base de
donnes, par exemple un tablespace par thme
Contient un ou plusieurs segments (un segment appartient un et un
seul tablespace)
Stock physiquement dans un (au moins) ou plusieurs chiers
Exemple : la BD d'une entreprise gre la facturation et les RH
1 Tablespace Facturation :
Contient les tables (segments) facture, produit, client, ligne_fact, etc.
Stock dans les chiers fact01.dbf et fact02.dbf
2 Tablespace RH :
Contient les tables (segments) Employ, Paie, Absence, etc.
Stock dans les chiers rh01.dbf et rh02.dbf
c (IsitCom)
36 / 149 Khaled Jouini
2012-2013
36 / 149
4. Tablespace
Tablespace
Espace logique permettant d'organiser "logiquement" une base de
donnes, par exemple un tablespace par thme
Contient un ou plusieurs segments (un segment appartient un et un
seul tablespace)
Stock physiquement dans un (au moins) ou plusieurs chiers
Exemple : la BD d'une entreprise gre la facturation et les RH
1 Tablespace Facturation :
Contient les tables (segments) facture, produit, client, ligne_fact, etc.
Stock dans les chiers fact01.dbf et fact02.dbf
2 Tablespace RH :
Contient les tables (segments) Employ, Paie, Absence, etc.
Stock dans les chiers rh01.dbf et rh02.dbf
c (IsitCom)
36 / 149 Khaled Jouini
2012-2013
36 / 149
4. Tablespace
Tablespace
c (IsitCom)
37 / 149 Khaled Jouini
2012-2013
37 / 149
4. Tablespace
Une BD Oracle contient au minimum deux tablespaces crs en mme
temps que la BD : SYSTEM et SYSAUX (depuis la version 10)
Tablespace SYSAUX : contient les objets crs par les produits Oracle
Tablespace SYSTEM :
Contient le dictionnaire de donnes, y compris les programmes stocks
Contient le segment d'annulation SYSTEM
Ne doit pas contenir les donnes des utilisateurs (bien que a soit
possible)
c (IsitCom)
38 / 149 Khaled Jouini
2012-2013
38 / 149
4. Tablespace
En pratique, il est fortement recommand de crer :
Un tablespace UNDO (pour les segments d'annulation) :
CREATE UNDO TABLESPACE...
Un tablespace temporaire (pour les segments temporaires) :
CREATE TEMPORARY TABLESPACE...
Au moins un tablespace permanent (de donnes) pour viter de
mettre les donnes utilisateurs dans SYSTEM :
CREATE TABLESPACE...
maintenance
c (IsitCom)
39 / 149 Khaled Jouini
2012-2013
39 / 149
En rsum...
Un tablespace ne peut
appartenir qu' une seule base
de donnes la fois.
Un segment ne peut pas tre
rparti sur plusieurs tablespaces,
mais peut s'tendre plusieurs
chiers de donnes d'un mme
tablespace.
Un extent ne peut appartenir
qu' un seul chier.
Figure:
stockage [
Oracle r Concepts.
c (IsitCom)
40 / 149 Khaled Jouini
2012-2013
40 / 149
c (IsitCom)
41 / 149 Khaled Jouini
2012-2013
41 / 149
2012-2013
42 / 149
c (IsitCom)
43 / 149 Khaled Jouini
2012-2013
43 / 149
Exemples
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M;
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M
AUTOEXTEND ON NEXT 5M;
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M
AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED;
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M
AUTOEXTEND ON NEXT 5M MAXSIZE 100M, 'f_2.dbf' SIZE 40M
AUTOEXTEND ON;
c (IsitCom)
44 / 149 Khaled Jouini
2012-2013
44 / 149
Exemples
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M;
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M
AUTOEXTEND ON NEXT 5M;
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M
AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED;
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M
AUTOEXTEND ON NEXT 5M MAXSIZE 100M, 'f_2.dbf' SIZE 40M
AUTOEXTEND ON;
c (IsitCom)
44 / 149 Khaled Jouini
2012-2013
44 / 149
Exemples
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M;
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M
AUTOEXTEND ON NEXT 5M;
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M
AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED;
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M
AUTOEXTEND ON NEXT 5M MAXSIZE 100M, 'f_2.dbf' SIZE 40M
AUTOEXTEND ON;
c (IsitCom)
44 / 149 Khaled Jouini
2012-2013
44 / 149
Exemples
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M;
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M
AUTOEXTEND ON NEXT 5M;
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M
AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED;
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M
AUTOEXTEND ON NEXT 5M MAXSIZE 100M, 'f_2.dbf' SIZE 40M
AUTOEXTEND ON;
c (IsitCom)
44 / 149 Khaled Jouini
2012-2013
44 / 149
Exemple
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 2 M;
c (IsitCom)
45 / 149 Khaled Jouini
2012-2013
45 / 149
AUTO : gestion des blocs disponibles pour l'insertion via des Bitmaps
MANUAL : gestion des blocs disponibles pour l'insertion via des FREE
LISTS
Exemple
CREATE TABLESPACE ts_01 DATAFILE 'f_1.dbf' SIZE 20 M
SEGMENT SPACE MANAGEMENT MANUAL;
c (IsitCom)
46 / 149 Khaled Jouini
2012-2013
46 / 149
2012-2013
47 / 149
Exemple
CREATE TABLE Produit (...)
PCTFREE 10,
PCTUSED 40,
TABLESPACE TS1;
2 Ultrieurement :
ALTER TABLE
Exemple
nomTable
MOVE TABLESPACE
nomTablespace ;
c (IsitCom)
48 / 149 Khaled Jouini
2012-2013
48 / 149
2 Il peut en exister plusieurs, mais un instant donn un seul est utilis par
le systme
Cration
secondes)
c SYSTEM
KhaledALTER
Jouini
(IsitCom) SET
Administration
des bases de donnes
2012-2013
UNDO_TABLESPACE
= undotbs_02;
49 / 149
2012-2013
50 / 149
Structure de la base
Fichiers de donnes
Fichiers de journalisation
Fichiers de Contrle
Fichier de paramtres
II. Instance
1.
2.
3.
4.
5.
Vue d'ensemble
La SGA
La PGA
Processus d'arrire plan
Processus Serveur
1. Dmarrage
2. Arrt
c (IsitCom)
51 / 149 Khaled Jouini
2012-2013
51 / 149
Vue d'ensemble
Structure de la base
Fichiers de donnes
Fichiers de journalisation
Fichiers de Contrle
Fichier de paramtres
II. Instance
1.
2.
3.
4.
5.
Vue d'ensemble
La SGA
La PGA
Processus d'arrire plan
Processus Serveur
1. Dmarrage
2. Arrt
c (IsitCom)
51 / 149 Khaled Jouini
2012-2013
51 / 149
Vue d'ensemble
c (IsitCom)
51 / 149 Khaled Jouini
2012-2013
51 / 149
Vue d'ensemble
La base de donnes
L'instance
Ce chapitre...
1 Base de donnes
2 Instance
3 Dictionnaire de donnes
4 Dmarrage et arrt d'un serveur de BD Oracle
c (IsitCom)
52 / 149 Khaled Jouini
2012-2013
52 / 149
I. La base de donnes
Structure de la base
Fichiers de donnes
Fichiers de journalisation
Fichiers de Contrle
Fichier de paramtres
II. Instance
1.
2.
3.
4.
5.
Vue d'ensemble
La SGA
La PGA
Processus d'arrire plan
Processus Serveur
1. Dmarrage
2. Arrt
c (IsitCom)
53 / 149 Khaled Jouini
2012-2013
53 / 149
I. La base de donnes
1. Structure de la base
BD : ensemble de chiers stocks sur les disques durs du serveur
hbergeant la base.
Il existe dirents types de chiers : de donnes, de jounralisation, etc.
Les chiers de paramtres, de contrle, des archives des chiers de
journalisation et celui des mots de passe ne font pas partie de la base
c (IsitCom)
53 / 149 Khaled Jouini
2012-2013
53 / 149
I. La base de donnes
c (IsitCom)
54 / 149 Khaled Jouini
2012-2013
54 / 149
I. La base de donnes
c (IsitCom)
55 / 149 Khaled Jouini
2012-2013
55 / 149
I. La base de donnes
Multiplexe
Maintien de plusieurs copies synchrones d'un mme chier log
Groupe : ensemble de chiers multiplexs (identiques).
Membre : un chier appartenant un groupe synchrone est dit
membre de ce groupe (vue V$LOGFILE)
Il existe au minimum deux groupes par BD (vue V$LOG).
Cyclique
Chaque fois que les chiers d'un groupe sont saturs, le systme crit
dans les chiers du groupe suivant
Si le contenu des chiers n'est pas archiv, il est dnitivement perdu
Pour activer l'archivage, la BD doit tre en mode ARCHIVLOG
c (IsitCom)
56 / 149 Khaled Jouini
2012-2013
56 / 149
I. La base de donnes
numGroupe
2012-2013
57 / 149
I. La base de donnes
2012-2013
58 / 149
I. La base de donnes
5. Fichier de paramtres
Consult par l'instance son dmarrage. Ne fait pas partie de la BD
Contient l'ensemble des
nomParametre
nomParametre "
nomParametre "
2012-2013
59 / 149
I. La base de donnes
5. Fichier de paramtres
PFILE (Parameter File)
Fichier texte
Modiable via un diteur texte
Disponible sur chaque machine pou-
Nomm sple%.ora
Modiable chaud (pour certains
paramtres)
2012-2013
60 / 149
I. La base de donnes
5. Fichier de paramtres
Instruction SQL pour modier les paramtres dans SPFILE
2012-2013
61 / 149
II. Instance
Structure de la base
Fichiers de donnes
Fichiers de journalisation
Fichiers de Contrle
Fichier de paramtres
II. Instance
1.
2.
3.
4.
5.
Vue d'ensemble
La SGA
La PGA
Processus d'arrire plan
Processus Serveur
1. Dmarrage
2. Arrt
c (IsitCom)
62 / 149 Khaled Jouini
2012-2013
62 / 149
II. Instance
1. Vue d'ensemble
Instance : ouvre une seule BD la fois
Se compose de :
1 Zones en mmoire vive utilises par l'instance :
c (IsitCom)
62 / 149 Khaled Jouini
2012-2013
62 / 149
II. Instance
2. La SGA
System Global Area
Ensemble de tampons mmoire partags par les processus de l'instance
Alloue au dmarrage de la BD et libre sa fermeture
3 zones obligatoires et 3 zones optionnelles
Taille maximale : paramtre SGA_MAX_SIZE
c (IsitCom)
63 / 149 Khaled Jouini
2012-2013
63 / 149
II. Instance
Buer
Library Buer
Tampon stockant des informations sur les requtes SQL les plus
rcemment excutes
Informations : texte, version compile et plan d'excution
Remplacement : LRU
Dictionary Buer
2012-2013
64 / 149
II. Instance
Buer
Library Buer
Tampon stockant des informations sur les requtes SQL les plus
rcemment excutes
Informations : texte, version compile et plan d'excution
Remplacement : LRU
Dictionary Buer
2012-2013
64 / 149
II. Instance
Buer
Library Buer
Tampon stockant des informations sur les requtes SQL les plus
rcemment excutes
Informations : texte, version compile et plan d'excution
Remplacement : LRU
Dictionary Buer
2012-2013
64 / 149
II. Instance
c (IsitCom)
65 / 149 Khaled Jouini
2012-2013
65 / 149
II. Instance
c (IsitCom)
65 / 149 Khaled Jouini
2012-2013
65 / 149
II. Instance
c (IsitCom)
65 / 149 Khaled Jouini
2012-2013
65 / 149
II. Instance
c (IsitCom)
65 / 149 Khaled Jouini
2012-2013
65 / 149
II. Instance
c (IsitCom)
66 / 149 Khaled Jouini
2012-2013
66 / 149
II. Instance
c (IsitCom)
66 / 149 Khaled Jouini
2012-2013
66 / 149
II. Instance
c (IsitCom)
66 / 149 Khaled Jouini
2012-2013
66 / 149
II. Instance
c (IsitCom)
67 / 149 Khaled Jouini
2012-2013
67 / 149
II. Instance
c (IsitCom)
67 / 149 Khaled Jouini
2012-2013
67 / 149
II. Instance
Large Pool :
Streams Pool :
SGA Fixe :
verrous, etc.
c (IsitCom)
68 / 149 Khaled Jouini
2012-2013
68 / 149
II. Instance
Gestion manuelle :
Gestion automatique
c (IsitCom)
69 / 149 Khaled Jouini
2012-2013
69 / 149
II. Instance
2. La SGA - En rsum...
c (IsitCom)
70 / 149 Khaled Jouini
2012-2013
70 / 149
II. Instance
c (IsitCom)
71 / 149 Khaled Jouini
2012-2013
71 / 149
II. Instance
Dclenchement :
Au dmarrage de l'instance pour certains
Ultrieurement suite des vnements particuliers (ex. Tampon
satur) pour d'autres
c (IsitCom)
72 / 149 Khaled Jouini
2012-2013
72 / 149
II. Instance
Rle : criture dans les chiers de donnes (sur disque) des blocs
devant sortir du tampon de la base de donnes
Il peut en exister plusieurs (jusqu' 20) numrots comme suit :
DBW0, DBW1,..., DBW9, DBWa,..., DBWj
Paramtre DB_WRITER_PROCESSES : dtermine le nombre de processus
DBW
c (IsitCom)
73 / 149 Khaled Jouini
2012-2013
73 / 149
II. Instance
c (IsitCom)
74 / 149 Khaled Jouini
2012-2013
74 / 149
II. Instance
c (IsitCom)
74 / 149 Khaled Jouini
2012-2013
74 / 149
II. Instance
c (IsitCom)
74 / 149 Khaled Jouini
2012-2013
74 / 149
II. Instance
c (IsitCom)
75 / 149 Khaled Jouini
2012-2013
75 / 149
II. Instance
c (IsitCom)
76 / 149 Khaled Jouini
2012-2013
76 / 149
II. Instance
PMON, essentiellement
Dtection et rparation des crash des processus utilisateurs
Exemple :
1 Un PU lance une requte UPDATE
2 Les donnes concernes sont verrouilles
3 Le PU plante!!
2012-2013
77 / 149
II. Instance
5. Processus serveur
Processus Utilisateur (PU ou User Process) :
Programme demandant une interaction avec le Serveur de BD (Ex.
SQL*PLUS)
Ne fait pas partie du serveur de BD et n'interagit avec celui-ci qu'au
travers d'un processus serveur
c (IsitCom)
78 / 149 Khaled Jouini
2012-2013
78 / 149
Structure de la base
Fichiers de donnes
Fichiers de journalisation
Fichiers de Contrle
Fichier de paramtres
II. Instance
1.
2.
3.
4.
5.
Vue d'ensemble
La SGA
La PGA
Processus d'arrire plan
Processus Serveur
1. Dmarrage
2. Arrt
c (IsitCom)
79 / 149 Khaled Jouini
2012-2013
79 / 149
Analyse (Parse)
1 Le PU envoie la requte au PS
2 Si la requte n'a pas dj t analyse prcdemment (consultation du
le Library Buer)
Excution :
2012-2013
79 / 149
Analyse (Parse)
Excution
1 Les informations sur la modication sont consignes dans le tampon de
journalisation
c (IsitCom)
80 / 149 Khaled Jouini
2012-2013
80 / 149
Structure de la base
Fichiers de donnes
Fichiers de journalisation
Fichiers de Contrle
Fichier de paramtres
II. Instance
1.
2.
3.
4.
5.
Vue d'ensemble
La SGA
La PGA
Processus d'arrire plan
Processus Serveur
1. Dmarrage
2. Arrt
c (IsitCom)
81 / 149 Khaled Jouini
2012-2013
81 / 149
1. Rappel
Dictionnaire de donnes
1 Ensemble de vues et de tables contenant les informations sur toutes
excutes (CREATE/ALTER/DROP)
c (IsitCom)
81 / 149 Khaled Jouini
2012-2013
81 / 149
2. Vues statiques
Trois types :
Vues prxes par USER_
Donnent accs aux informations sur les objets possds (crs) par
l'utilisateur
Exemple : USER_TABLES : tables cres par l'utilisateur
c (IsitCom)
82 / 149 Khaled Jouini
2012-2013
82 / 149
3. Vues dynamiques
Contiennent l'information sur l'activit
l'instance
en cours de la BD et de
Prxes par V$
c (IsitCom)
83 / 149 Khaled Jouini
Description
Informations
Informations
Informations
Informations
Informations
sur la BD
sur l'instance
rsumes sur la SGA
sur les paramtres d'initialisation
sur les requtes SQL excutes
2012-2013
83 / 149
Structure de la base
Fichiers de donnes
Fichiers de journalisation
Fichiers de Contrle
Fichier de paramtres
II. Instance
1.
2.
3.
4.
5.
Vue d'ensemble
La SGA
La PGA
Processus d'arrire plan
Processus Serveur
1. Dmarrage
2. Arrt
c (IsitCom)
84 / 149 Khaled Jouini
2012-2013
84 / 149
1. Dmarrage - a. Syntaxe
Dmarrage - Syntaxe (non exhaustive)
STARTUP [PFILE=nomPFILE]
[OPEN | MOUNT | NOMOUNT]
c (IsitCom)
84 / 149 Khaled Jouini
2012-2013
84 / 149
1. Dmarrage - b.
STARTUP NOMOUNT
STARTUP NOMOUNT
1 Un SPFILE (sple%.ora) est cherch. Si non trouv un ple
c (IsitCom)
85 / 149 Khaled Jouini
2012-2013
85 / 149
1. Dmarrage - c.
STARTUP MOUNT
STARTUP MOUNT
1 Ouverture du chier de contrle de la BD (localisation partir du
paramtre d'initialisation CONTROL_FILES)
2 Si le chier de contrle est multiplex et que les copies ne sont pas
2012-2013
86 / 149
1. Dmarrage - d.
STARTUP OPEN
c (IsitCom)
87 / 149 Khaled Jouini
2012-2013
87 / 149
2. Arrt - a. Syntaxe
Syntaxe (non exhaustive)
SHUTDOWN [NORMAL | TRANSACTIONAL | IMMIDIATE | ABORT]
c (IsitCom)
88 / 149 Khaled Jouini
2012-2013
88 / 149
SHUTDOWN TRANSACTIONAL
Attend l'arrt de toutes les transactions (mais pas la dconnexion de
tous les utilisateurs)
Eectue un checkpoint avant l'arrt
c (IsitCom)
89 / 149 Khaled Jouini
2012-2013
89 / 149
SHUTDOWN ABORT
Fermeture instantane sans attendre les sessions/transactions en
cours.
Pas de checkpoint avant l'arrt recouvrement au dmarrage
utiliser uniquement si blocage des autres types d'arrt
c (IsitCom)
90 / 149 Khaled Jouini
2012-2013
90 / 149
c (IsitCom)
91 / 149 Khaled Jouini
2012-2013
91 / 149
c (IsitCom)
92 / 149 Khaled Jouini
2012-2013
92 / 149
Introduction
c (IsitCom)
92 / 149 Khaled Jouini
2012-2013
92 / 149
Introduction
Introduction
Rle de l'administrateur de scurit et des ressources
1 Dnir une politique de scurit
2 Grer les
rles)
audits
Ce chapitre...
1 Gestion basique des comptes des utilisateurs
2 Gestion des privilges et des rles
3 Gestion des prols
c (IsitCom)
92 / 149 Khaled Jouini
2012-2013
92 / 149
c (IsitCom)
93 / 149 Khaled Jouini
2012-2013
93 / 149
2012-2013
93 / 149
de ses objets
c (IsitCom)
94 / 149 Khaled Jouini
2012-2013
94 / 149
2012-2013
95 / 149
c (IsitCom)
96 / 149 Khaled Jouini
2012-2013
96 / 149
Verrouillage
Dverrouillage
2012-2013
97 / 149
c (IsitCom)
98 / 149 Khaled Jouini
2012-2013
98 / 149
Droit d'excuter une action sur n'importe quel objet d'un type
particulier (prs de 160).
Ex. CREATE/DROP/ALTER TABLESPACE, USER, SESSION, TABLE,
VIEW, etc.
c (IsitCom)
98 / 149 Khaled Jouini
2012-2013
98 / 149
INDEX
SESSION
TABLESPACE
Exemple
CREATE [ANY] TABLE
ALTER [ANY] TABLE
DROP [ANY] TABLE
SELECT [ANY] TABLE
UPDATE [ANY] TABLE
DELETE [ANY] TABLE
CREATE [ANY] INDEX
ALTER [ANY] INDEX
DROP [ANY] INDEX
CREATE SESSION
ALTER SESSION
RESTRICTED SESSION
CREATE TABLESPACE
ALTER TABLESPACE
DROP TABLESPACE
2012-2013
99 / 149
SYSDBA
STARTUP
SHUTDOWN
ALTER DATABASE OPEN | MOUNT
RECOVER DATABASE
ALTER DATABASE BACKUP CONTROLFILE TO
ALTER DATABASE ARCHIVELOG
RESTRICTED SESSION
SYSOPER WITH ADMIN OPTION
CREATE DATABASE
2012-2013
100 / 149
Exemples :
1 GRANT CREATE TABLE, SELECT ANY TABLE, CREATE TABLESPACE
TO isitcom
2 GRANT SYSDBA TO administrateur WITH ADMIN OPTION
3 GRANT CREATE SESSION TO PUBLIC
c (IsitCom)
101 / 149 Khaled Jouini
2012-2013
101 / 149
c (IsitCom)
102 / 149 Khaled Jouini
2012-2013
102 / 149
Exemple 2
c (IsitCom)
103 / 149 Khaled Jouini
2012-2013
103 / 149
c (IsitCom)
104 / 149 Khaled Jouini
2012-2013
104 / 149
TABLE[.nomCol ]
X
X
VIEW[.nomCol ]
X
X
X
X
X
X
X
X
X
X
SEQUENCE
X
PROCEDURE
X
X
c (IsitCom)
105 / 149 Khaled Jouini
2012-2013
105 / 149
Exemples
1 GRANT ALL PRIVILEGES ON isitcom.etudiant TO scolarite
2 GRANT SELECT,UPDATE (nom,adresse) ON isitcom.etudiant TO
guichet
c (IsitCom)
106 / 149 Khaled Jouini
2012-2013
106 / 149
c (IsitCom)
107 / 149 Khaled Jouini
2012-2013
107 / 149
c (IsitCom)
108 / 149 Khaled Jouini
2012-2013
108 / 149
c (IsitCom)
108 / 149 Khaled Jouini
2012-2013
108 / 149
c (IsitCom)
108 / 149 Khaled Jouini
2012-2013
108 / 149
Suppression
c (IsitCom)
109 / 149 Khaled Jouini
2012-2013
109 / 149
c (IsitCom)
110 / 149 Khaled Jouini
2012-2013
110 / 149
1. Vue d'ensemble
Prol (prole) :
Ensemble nomm de limitations :
1 limitations sur les mots de passe
2012-2013
110 / 149
1. Exemple de limitations
Limitations sur l'utilisation des ressources
idle_time
connect_time
cpu_per_session
sessions_per_user
c (IsitCom)
111 / 149 Khaled Jouini
2012-2013
111 / 149
c (IsitCom)
112 / 149 Khaled Jouini
2012-2013
112 / 149
Suppression
c (IsitCom)
113 / 149 Khaled Jouini
2012-2013
113 / 149
c (IsitCom)
114 / 149 Khaled Jouini
2012-2013
114 / 149
Introduction
c (IsitCom)
114 / 149 Khaled Jouini
2012-2013
114 / 149
Introduction
Introduction
Mise en place d'un BD Oracle
1 Installation d'Oracle ct serveur et ct client
2 Cration de la BD
3 Conguration du rseau ct serveur et ct client
Ce chapitre...
1 Cration d'une base de donnes
2 Conguration du rseau (Oracle Net)
c (IsitCom)
114 / 149 Khaled Jouini
2012-2013
114 / 149
c (IsitCom)
115 / 149 Khaled Jouini
2012-2013
115 / 149
c (IsitCom)
115 / 149 Khaled Jouini
Oracle_Base et Oracle_Home
2012-2013
115 / 149
c (IsitCom)
116 / 149 Khaled Jouini
2012-2013
116 / 149
oradata et admin :
Diviss chacun en des sous-rpertoires, un par BD
Chaque sous-rpertoire porte le nom de la BD correspondante
(paramtre DB_NAME)
c (IsitCom)
117 / 149 Khaled Jouini
2012-2013
117 / 149
v .v .v : version du produit
type : type du produit. Ex. dbhome pour serveur de BD
_n : un numro d'ordre du type
Ex. d:\app\foulen\product\11.2.0\dbhome1
c (IsitCom)
118 / 149 Khaled Jouini
2012-2013
118 / 149
ORAPWD FILE=PWDdbisitcom.ora
4 (Uniqu. sous Windows) Crer une instance sous forme d'un service Windows
oracle_sid)
SQLPLUS /nolog puis SQL> CONNECT / AS SYSDBA
c (IsitCom)
119 / 149 Khaled Jouini
2012-2013
119 / 149
CATALOG.SQL :
SQL> @ {chemin}CATALOG.SQL
{chemin}CATPROC.SQL
c (IsitCom)
120 / 149 Khaled Jouini
2012-2013
120 / 149
DATABASE
2012-2013
121 / 149
DATABASE
c (IsitCom)
122 / 149 Khaled Jouini
2012-2013
122 / 149
c (IsitCom)
123 / 149 Khaled Jouini
2012-2013
123 / 149
c (IsitCom)
124 / 149 Khaled Jouini
2012-2013
124 / 149
c (IsitCom)
125 / 149 Khaled Jouini
2012-2013
125 / 149
c (IsitCom)
126 / 149 Khaled Jouini
2012-2013
126 / 149
c (IsitCom)
127 / 149 Khaled Jouini
2012-2013
127 / 149
c (IsitCom)
128 / 149 Khaled Jouini
2012-2013
128 / 149
c (IsitCom)
129 / 149 Khaled Jouini
2012-2013
129 / 149
Figure:
[Oracle c
c (IsitCom)
129 / 149 Khaled Jouini
2012-2013
129 / 149
2012-2013
130 / 149
Nom de service :
Valeur stocke dans le paramtre SERVICE_NAMES du chier de
paramtres
Par dfaut correspond au nom global de la BD renseign lors de sa
cration : DB_NAME.DB_DOMAIN
Ex. dbisitcom (si pas de domaine), dbisitcom.infcom.rnu.tn
c (IsitCom)
131 / 149 Khaled Jouini
2012-2013
131 / 149
3 Port d'coute (si protocole TCP/IP) : par dfaut 1521 pour Oracle
4 Nom de service du serveur de BD
c (IsitCom)
132 / 149 Khaled Jouini
descripteur de
2012-2013
132 / 149
db :
2012-2013
133 / 149
c (IsitCom)
134 / 149 Khaled Jouini
2012-2013
134 / 149
c (IsitCom)
134 / 149 Khaled Jouini
2012-2013
134 / 149
c (IsitCom)
135 / 149 Khaled Jouini
2012-2013
135 / 149
c (IsitCom)
136 / 149 Khaled Jouini
2012-2013
136 / 149
c (IsitCom)
137 / 149 Khaled Jouini
2012-2013
137 / 149
2012-2013
138 / 149
En rsum...
c (IsitCom)
139 / 149 Khaled Jouini
2012-2013
139 / 149
c (IsitCom)
140 / 149 Khaled Jouini
2012-2013
140 / 149
c (IsitCom)
141 / 149 Khaled Jouini
2012-2013
141 / 149
c (IsitCom)
142 / 149 Khaled Jouini
2012-2013
142 / 149
c (IsitCom)
143 / 149 Khaled Jouini
2012-2013
143 / 149
N.B. le chier gnr peut tre dupliqu en l'tat sur toutes les
machines clientes
c (IsitCom)
144 / 149 Khaled Jouini
2012-2013
144 / 149
c (IsitCom)
145 / 149 Khaled Jouini
2012-2013
145 / 149
c (IsitCom)
146 / 149 Khaled Jouini
2012-2013
146 / 149
c (IsitCom)
147 / 149 Khaled Jouini
2012-2013
147 / 149
c (IsitCom)
148 / 149 Khaled Jouini
2012-2013
148 / 149
c (IsitCom)
149 / 149 Khaled Jouini
Eet
Ache la liste des commandes
Ache l'aide sur une commande
Dmarre le processus d'coute
Arrte le processus d'coute
Ache les informations sur la conguration du
processus d'coute et les services enregistrs
Ache des informations dtailles sur les services enregistrs auprs du processus d'coute
Recharge la conguration du processus d'coute
partir de listener.ora
2012-2013
149 / 149