Rôle d’un DBA
Disponibilité des données
Sécurité des données
Chap 1 : COMPOSANTS D’UN SERVEUR DE BD ORACLE
Serveur : 2 parties
Logique = Instance = Mémoire (SGA, PGA)
SGA : System Global Area pour stocker les données sauf les processus qui sont stockés dans la PGA
PGA: Process Global Area ou Program Global Area
Physique = Base de données = Fichiers, tout ce qui se trouve dans le dossier Oracle fait partie de la
partie physique. 3 fichiers les plus importants (fichiers de contrôle, fichiers de données, fichiers de
journalisation)
Chap 2 : Méthode de démarrage et d’arrêt d’une BD.
Etats d’une BD
-SHUTDOWN (Arrêté)
-NOMOUNT(Non Monté)
-MOUNT(Monté)
-OPEN (ouvert)
Démarrage d’une BD
Arrêter la BD
SQL --> shutdown Immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
Une fois BD arrêté.
SHUTDOWN: (BD Arrêté)
Action possible:
-Création du service Oracle [Link]
-Passage de l’arrêt à NOMOUNT
SQL--> Startup Nomount
ORACLE instance started.
Total System Global Area 5066715448 bytes
Fixed Size 9277752 bytes
Variable Size 1090519040 bytes
Database Buffers 3959422976 bytes
Redo Buffers 7495680 bytes
NOMOUNT (BD Non Montée)
Action possible:
-Création d’une nouvelle BD
-Passage de Nomount à Mount
SQL →Alter database MOUNT;
MOUNT (BD Montée)
Actions Possibles :
-Modification de la BD : Alter database ….
-Restauration de la BD : Recover Database …
-Passage en mode ArchiveLog (archivage automatique du journal)
-Passage de Mount à Open
SQL →Alter database open;
OPEN : (BD Ouverte)
Action possible :
-Toutes les opérations sauf celles des étapes prédédentes.
Passage de l’arrêt à Mount
SQL → Startup Mount
Passage de l’arrêt à OPEN
SQL → Startup ou Startup Open
Etat d’un conteneur
SQL → show pdbs ;
Ouvrir un conteneur
SQL → Alter pluggable database orclpdb open;
ARRET D’UNE BD
Shutdown : Commande principale pour arrêter une DB.
Plusieurs types de shutdown : ABORT , IMMEDIATE , TRANSACTIONAL , NORMAL
Abort : Arrêt non propre, ne ferme pas correctement les fichiers ne laisse pas les processus se terminer
correctement. Il crée un point de reprise, ramener la DB à un point cohérent avant l’arrêt. On l’utilise
lorsque les autres commandes ne marchent pas.
Immediate : La différence avec Abort, il arrête le server. Une fois redémarrage il nous amène au point
d’arrêt. On ne perd aucune donnée, crée une copie avant l’arrêt.
Transactional : Arrête la DB après avoir terminé toutes les transactions INSERT, UPDATE, DELETE,
MERGE sauf SELECT ou CREATE. Arrête la db après terminaison des requêtes.
Normal : La différence, tant qu’il y’a quelqu’un qui est connecté ça n’arrête pas la base. Il faut une
déconnexion d’abord de tous les users.
Chap 3 : Gestion de fichiers d’Initialisation
Un fichier d’initialisation contient des paramètres permettant de démarrer la BD.
Deux types de fichiers :
-PFILE = [Link] (Texte peut être ouvert)
-SPFILE = [Link] (Binaire ne jamais ouvrir)
Une DB démarre toujours avec spfile
Infos sur les fichiers d’initialisation
SQL → show parameter Spfile ;
NB : Si VALUE est renseigné, c’est le SPFILE qui a démarré la DB.
Création d’un pfile à partir d’un spfile
Méthode 1:
Create pfile
From spfile ;
Méthode 2 :
Create pfile = 'C:\ORACLE\BASE\DATABASE\[Link]'
From spfile;
Création d’un SPFILE à partir d’un PFILE
On ne peut créer le fichier qui démarre la DB
Méthode 1 : Absence du spfile
➔ Arrêter la DB
SQL → Shutdown immediate
➔ Supprimer le spfile (manuellement)
➔ Démarrer la DB
SQL → Startup
➔ Vérifier que c’est le pfile qui a démarré la DB(Value vide)
SQL → Show parameter spfile
➔ Créer le spfile
SQL → Create spfile from pfile;
Méthode 2 : Présence du spfile
➔ Arrêter la DB
SQL → Shutdown immediate
➔ Démarrer la DB avec le pfile
SQL → Startup pfile =’C:\...\database\[Link]’
➔ Vérifier
SQL → Show parameter spfile
➔ Créer le spfile
Create spfile =’C:\...\[Link]’ from pfile;
Priorité des fichiers lors du démarrage
1. [Link] (c’est lui qui sera recherché par défaut [Link] dans notre config)
2. [Link]
3. [Link]([Link])
4. [Link]
Si aucun des 4 n’est disponible, la DB ne démarre pas.
Chap 4 : Gestion des fichiers de contrôle
Shutdown → Nomount ([Link])
Nomount → Mount ([Link])
Mount → Open
Un fichier de contrôle contient des paramètres permettant de monter DB.
Infos sur les fichiers de contrôle
SQL → show parameter control_files
Multiplexage de fichier de contrôle
NB : Utilisation du pfile
➔ Arrêter la DB
SQL → Shutdown Immediate
➔ Créer un dossier de sauvegarde dans répertoire au choix (Ex : C:\)
➔ Copier l’un des fichiers de contôle dans C:\sauvegarde\
➔ Renommer la [Link]
➔ Editer le pfile pour ajouter la référence du nouveau fichier
*.control_files=’…’, ‘C:\sauvegarde\[Link]’
➔ Démarrer la BD avec le pfile
SQL → Startup pfile =’C:\...\database\[Link]’
➔ Vérifier que control03 est utilisé
SQL → show parameter control_files
➔ Recréer le spfile
SQL → Create spfile from pfile;
➔ redémarrer la BD
SQL → Startup force
Erreurs Fréquentes sur les fichiers de contrôle
Erreur 1 : ORA-00205 qui est une erreur d’identification de fichier
Cause : Un fichier de contrôle référencé dans le fichier d’initialisation est introuvable. Il n’existe pas.
Solution 1 :
➔ Arrêter la BD
SQL → shutdown immediate
➔ Copier l’un des fichiers de contrôle à la place du fichier manquant et lui donner le même nom
que le fichier manquant
➔ Démarrer la DB
SQL → Startup
Erreur 2 : ORA-00214 qui est une incohérence entre fichiers de contrôles
Cause : Un des fichiers de contrôle n’a pas été mis à jour en même temps que les autres.
Solution 2 :
➔ Arrêter la BD
SQL → shutdown immediate
➔ Editer le pfile ([Link]) pour enlever la référence du fichier corrompu ou manquant.
➔ Démarrer la DB avec le pfile modifié.
SQL → Startup pfile=’ C:\oracle\Base\database\[Link]’
➔ Recréer immédiatement le spfile
SQL → Create spfile from pfile ;
➔ Redémarrer la DB
SQL → Startup force
Chap 5 : Gestion de Tablespaces & Fichiers de données
Tablespace = Espace mémoire qui stocke les données. Un tablespace est constitué d’un ou de plusieurs
fichiers de données. Un fichier de données ne se trouve que dans un seul et un seul tablespace.
Types de Tablespace
On a 2 types de Tablespace : Tablespace SYSTÈME, Tablespace non SYSTÈME
Tablespace SYSTÈME : on ne les modifie pas, ils contiennent les données sont là par défaut pour le bon
fonctionnement du système.
Tablespace non SYSTÈME : Créer par l’Administrateur, peut être éditer, supprimer etc.
Avantages des Tablespace non SYSTÈME : séparer les données des users des données systèmes, séparer
les données dynamiques des données statiques, allouer un quota à chaque user.
Catégories de TableSpaces
TableSpace Permanent : stocke des données de façon permanente définitives
TableSpace Temporaire : stocke des données de façon temporaire (généralement les opérations de tri,
les données qui ne sont là que le temps d’une session)
TableSpace d’Annulation(UNDO) : contiennent les données permettant de reconstruire la DB
TABLESPACE PERMANENT
1) Création de tablespace permanent à taille statique
Ex : Créer un tablespace permanent nommé Master avec un fichier de données statique de
taille 50 Mo
SQL → create Tablespace Master Datafile 'C:\oracle\oradata\ORCL\orclpdb\[Link]'
size 50M;
2) Tablespace permanent à taille dynamique
Ex : Créer un tablespace ESMT avec un fichier de données dynamique de 40Mo
SQL → Create tablespace ESMT Datafile 'C:\oracle\oradata\ORCL\orclpdb\[Link]' size 40M
autoextend on Next 5M Maxsize 100M;