Vous êtes sur la page 1sur 115

Révision générale et Installation

Les grands concepts


Tâches élémentaires d’administration

Administration des bases de données sous Oracle


ESTM

M. Serigne NDIAYE

Ingénieur Études et Développement - Consultant BDD

khadrembacke84@gmail.com ou nd djily@yahoo.fr
+221 785053556 ou +33 782366237

August 5, 2021

1/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation
Les grands concepts
Tâches élémentaires d’administration

Programme (1ère Partie)


1 Révision générale et Installation
Introduction
Prérequis
Sur le cours
Les métiers autour des bases de données
Rôles du DBA
2 Les grands concepts
Les schémas pour Oracle
Identification du DBA sous Oracle
Le dictionnaire de données
Synthèse
3 Tâches élémentaires d’administration
Créér une base de données
Démarrer et arrêter une base de données
Assurer la sécurité des données 2/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Introduction
Révision générale et Installation Prérequis
Les grands concepts Sur le cours
Tâches élémentaires d’administration Les métiers autour des bases de données
Rôles du DBA

Objectifs

Compréhension minimale de l’architecture SGBD Oracle


Procédure d’installation en environnement Windows
Configuration d’Oracle NET (Service Réseau)
Arrêt et Démarrage (Les étapes)
Création d’une nouvelle base de données
Gestion de la mémoire
Gestion du Stockage (Tablespaces, DataFile, Tables,
Indexes. . . )
Gestions de la sécurité (Utilisateurs et Droits)
Sauvegarde et Restauration avec RMAN (Recovery Manager)

3/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Introduction
Révision générale et Installation Prérequis
Les grands concepts Sur le cours
Tâches élémentaires d’administration Les métiers autour des bases de données
Rôles du DBA

Prérequis...

Bases de données Relationnelles (Tables, Vues, Index,


Contraintes . . . )
SQL (SELECT, INSERT, UPDATE, DELETE)
4/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Introduction
Révision générale et Installation Prérequis
Les grands concepts Sur le cours
Tâches élémentaires d’administration Les métiers autour des bases de données
Rôles du DBA

Pour en savoir plus...

Documentation Oracle : www.oracle.com


En anglais, 2000 pages sur l’administration : très complet...

5/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Introduction
Révision générale et Installation Prérequis
Les grands concepts Sur le cours
Tâches élémentaires d’administration Les métiers autour des bases de données
Rôles du DBA

Les métiers autour des bases de données...

Administrateur
Responsable de la sécurité
Administrateur réseaux
Développeurs d’application
Administrateurs d’application
Utilisateurs : modifier les données, créer des rapports

Note
Dans des environnements de petite taille, l’administrateur peut
jouer quasiment tous les rôles

6/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Introduction
Révision générale et Installation Prérequis
Les grands concepts Sur le cours
Tâches élémentaires d’administration Les métiers autour des bases de données
Rôles du DBA

Rôles du DBA

Installer les logiciels Oracle


un serveur, des applications clientes,
En fonction de l’OS et des paramètres systèmes
Si fonctionnement en réseau : composants réseaux d’Oracle
Planifier et créer des bases de données
Gérer l’espace et implanter les schémas des données
Assurer la sécurité, l’intégrité et la pérennité des données
Effectuer des réglages pour optimiser les performances

7/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Définition

Base de données (Database)


Ensemble structuré d’éléments d’information, agencés sous forme
de Tables, dans lesquels les données sont organisées selon certains
critères en vue de permettre leur exploitation.

Système de Gestion de base de données (Database Management


System)
Système qui gère et contrôle l’accès à une base de données,
assurant ainsi une interface normalisée entre les applications et les
bases de données.

8/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Produits Oracle

9/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Présentation d’Oracle 11g

Oracle Database 11g est un SGBD Relationnelles


Disponible sur un grand nombre de plateforme (UNIX,
LINUX, WINDOWS)
Commercialisé selon trois gammes :
Edition Entreprise (Enterprise Edition)
Edition Standard (Standard Edition)
Edition Personnelle (Personal Edition) uniquement sur windows

10/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Oracle 11g Enterprise Edition

Oracle Real Application Cluster (RAC)


Oracle Partitionning
Advanced Security Option
Oracle Tuning Pack
Oacle OLAP et Oracle Data Mining
Total Recall (New in 11g)
Real Application Testing (New in 11g)
Advanced Compression (New in 11g)

11/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Architecture (Vue d’ensemble)

Deux architectures possibles :


client/serveur : des applications clientes envoient les requêtes
SQL et PL/SQL à un serveur.
Multitier : des serveurs d’application allègent la charge du
serveur en réalisant certains accès pour les clients.
Un serveur de bases de données est composé :
d’une instance = plusieurs processus et une zone de mémoire
d’une base de données
de plusieurs schémas, assimilés à des utilisateurs
Dans le cas de clusters de machines, Oracle peut associer
plusieurs instance à une même base de données

12/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

La connexion client/serveur

Un processus utilisateur est créé quand un utilisateur lance


une application cliente (requêtes)
Une connexion va être créée avec l’instance Oracle, l’utilisateur
va ouvrir une session
Un processus serveur va analyser et exécuter les requêtes,
retourner les données
Mode dédié : une processus serveur pour un processus client
Mode partagé : les clients partagent un groupe de processus
serveurs
Evite les processus serveurs inactifs

13/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

La connexion client/serveur (suite ...)

14/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Connexion à une base de données Oracle

Connection : Communication entre un process utilisateur


(User Process) et une instance
Session : Connexion spécifique d’un utilisateur à une instance
via un processus serveur (Server Process)

15/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Interaction avec une base de données Oracle

16/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Les composants d’une instance : Présentation générale


L’instance est en fait la composition de 2 sous ensembles :
Une zone mémoire : La SGA
Elle va servir à stocker les données issues des fichiers de
données sur le disque dur. Afin de pouvoir les partager entre
les différents processus.
Des processus d’arrière plan :
Ils vont servir à gérer les transferts de données entre la
mémoire et le disque dur, plus d’autres actions nécessaires au
bon fonctionnement de la base de données.
Note
L’instance est indispensable au bon fonctionnement d’une base de
données Oracle. Sans instance il ne vous sera pas possible
d’accéder à la base de données.
Il faut savoir qu’une instance ne pourra être assignée qu’à une
seule base de données (sauf en environnement RAC). 17/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Les composants d’une instance : La mémoire

La SGA (System Global Area)


Zone partagée par tous les utilisateurs de la base de données
Allouée au démarrage de l’instance en mémoire principale :
doit être la plus grosse possible
Son but est d’economiser les E/S. Elle contient :
le cache de données (Database buffer cache)
le cache de reprise (Redo log buffer) : log des changements
récents
le cache d’exécution partagé (shared pool) pour les requêtes
SQL et PL/SQL. Contient le dictionnaire de données en cache.
La PGA (Program Global Area)
Zone d’exécution des processus du serveur
Allouée au lancement de chaque processus

18/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

La mémoire (cont.)

La Shared Pool ou zone de mémoire partagée est utilisée pour


partager les informations sur les objets de la base de données ainsi
que sur les droits et privilèges accordés aux utilisateurs.
Cette zone mémoire se découpe en deux blocs :
La Library Cache
Le Dictionnary Cache

Note
On dimensionnera la taille de la Shared Pool avec le paramètre
SHARED POOL SIZE dans le fichier init.ora.

19/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

La mémoire : Shared Pool (cont.)

Library Cache
La Library Cache est une zone mémoire qui va stocker les
informations sur les ordres SQL exécutés récemment dans une zone
SQL Cache qui contiendra le texte de l’ordre SQL, la version
compilée de l’ordre SQL et son plan d’exécution.
Cette zone mémoire sera utilisée lorsqu’une requête sera exécutée
plusieurs fois, car Oracle n’aura plus alors à recréer la version
compilée de la requête ainsi que son plan d’exécution car ceux-ci
seront disponibles en mémoire.

20/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

La mémoire : Shared Pool (cont.)

Dictionnary Cache
Le Dictionnary Cache est une zone mémoire qui va contenir les
définitions des objets de la base de données qui ont été utilisé
récemment. On entend par définition la structure, les
composants, les privilèges liés à cet objet. Cette zone mémoire
permettra au serveur Oracle de ne pas avoir à aller chercher ces
informations sur le disque à chaque exécution d’une requête SQL.

21/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

La mémoire : Database Buffer Cache


Cette zone mémoire sert à stocker les blocs de données utilisés
récemment. Ce qui signifie que lorsque vous allez lancer une
première fois la requête Oracle, cette dernière va se charger de
rapatrier les données à partir du disque dur. Mais lors des
exécutions suivantes les blocs de données seront récupérés à partir
de cette zone mémoire, entrainant ainsi un gain de temps.
Cette zone fonctionne selon le principe dit du bloc ancien. C’est à
dire que l’on peut représenter cette zone mémoire comme étant un
tableau dont l’entrée serait en haut à gauche et la sortie en bas à
droite. Quand un bloc est appelé pour la première fois, il se situe
donc en haut à gauche. S’il n’est pas rappelé ou réutilisé il est
alors déplacé lentement vers la sortie. Cependant s’il est à nouveau
utilisé il sera automatiquement ramené vers l’entrée de la zone
mémoire. 22/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

La mémoire : Database Buffer Cache (cont.)

Cette zone mémoire est définie par 2 paramètres du fichier init.ora:

DB BLOCK SIZE : Ce paramètre, défini lors de la création


de la base de données, représente la taille d’un bloc de
données Oracle. Celui-ci est défini de manière définitive et ne
pourra plus être modifié.
DB BLOCK BUFFERS : Ce paramètre défini le nombre de
blocs Oracle qui pourront être contenus dans le Database
Buffer Cache.
Ainsi pour obtenir la taille du Database Buffer Cache on effectuera
l’opération DB BLOCK SIZE*DB BLOCK BUFFERS qui nous
retournera une taille en Kbytes.
23/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

La mémoire : Redo Log Buffer

Cette zone mémoire sert exclusivement à enregistrer toutes les


modifications apportées sur les données de la base.
Cet une zone mémoire de type circulaire, et dont on pourra
changer la taille avec le paramètre LOG BUFFER (en Bytes).
Le fait que cette zone mémoire soit de type circulaire et
séquentielle, signifie que les informations des toutes les
transactions sont enregistrées en même temps. Le fait que ce
buffer soit circulaire signifie qu’Oracle ne pourra écraser les
données contenues dans ce buffer que si elles ont été écrites dans
les fichiers REDOLOG FILE.

24/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

La mémoire : PGA

Contrairement aux autres zones mémoire celle-ci n’est pas


partagée. Elle est seulement utilisée par des processus serveur ou
d’arrière plan. Elle est allouée lors du démarrage du processus et
désallouée lors de l’arrêt du processus.
Cette zone mémoire contient :
La zone de tri : Appelée SORT AREA, c’est ici que seront
effectués les tris pour les requêtes lancées par l’utilisateur.
Les informations de session :infos session, privilèges user,
stat de tunning
L’état des curseurs
Le Stack Space : autres variables d’environnement et de
session de la session de l’utilisateur
25/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Les composants d’une instance : Les processus de fond


Un processus d’arrière-plan ou Background Process est un
processus qui s’exécute ”dans les coulisses” et sans
intervention de l’utilisateur.
Les processus démarrent avec le démarrage de l’instance et
s’arrêtent avec l’arrêt de celle ci.
Il existe une trentaine de processus d’arrière plan différents.
Chaque processus a un rôle bien défini dans le fonctionnement
de l’instance Oracle
Pour sélectionner les process on interroge la vue v$process :

26/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Les processus de fond (cont.)

Exécutent des actions asynchrones d’écriture et de contrôle


DBWn (Database Writer) - Ecrit le contenu du cache de
données dans les fichiers de données
Lorsque la place manque en SGA
De façon périodique, en mettant à jour le point de restauration
dans les fichiers de log
on peut en créer plusieurs : DBW0, DBW1, ... , DBWn
LGWR (Log Writer) - Ecrit le contenu du cache de reprise
dans les fichiers de log
en cas de “commit” d’un utilisateur
Toutes les trois secondes
Quand le cache de reprise est plein au tiers
Quand un processus DBWn decharge des données modifiées
27/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Les processus de fond (cont.)


CKPT (Chekpoint)
Pour assurer la synchronisation et la cohérence des données
SMON (System Monitor)
Effectue la restauration lors de reprise après panne
Nettoie les segments temporaires
Fusionne certains extents libres contigue
PMON (Process Monitor)
Pour gérer les pannes des processus clients
RECO (Recover)
Pour les reprises après panne de transactions distribuées
ARCn (Archiver)
Pour l’archivage, lorsqu’il est activé
...
28/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Les composants d’une base de données

Une base de données Oracle est composée de 2 structures :


Structure physique : Ce sont les fichiers qui existent
physiquement au niveau du SE
Structure logique : organise la structure physique ie des
fichiers de données et des données

29/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Les composants d’une base de données : Structure


physique

Des fichiers sur le disque


un fichier de contrôle qui spécifie le nom et l’emplacement des
fichiers, le nom de la base,...
plusieurs fichiers de données pour stocker les données
au moins deux fichiers de reprise après panne qui contiennent
les modifications récentes
des fichiers d’archivage (optionnel) pour archiver les fichiers de
contrôle
un fichier de paramètres (optionnel) qui stocke tous les
paramètres de la base
des fichiers de trace pour répertorier toutes les tâches et
erreurs effectuées

30/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Les composants d’une base de données : Structure logique

Des concepts pour gérer finement la mémoire


le block de données est l’unité logique la plus fine, 8ko par
défaut.
l’extent est un ensemble contigue de blocks, alloués en une
seule fois.
le segment est un ensemble d’extents dédiés à un même objet
(table, index, ...)
le tablespace : regroupe un ensemble d’objets (=segments)
pour faciliter leur administration. Peut atteindre 8 exabytes !
Un tablespace = un ou plusieurs fichiers de données

31/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Synthèse globale

32/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Structure de stockage

33/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Structure de stockage : Fichiers de contrôle

Les Fichier de contrôle (Control File)


Un des fichiers les plus importants pour le bon
fonctionnement de la base de données
NB : On doit avoir au moins un fichier de contrôle.
Contient des informations précieuses sur la base de données :
Date/Heure de création de la base
Nom de la base (DBNAME)
ID de la base (DBID)
Info RMAN
Archive Log on/off
Numéro de Séquence (SCN)
Chemin + Nom fichiers de la base avec leurs statuts
Point de reprise (Checkpoint)
etc.
34/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Structure de stockage : Fichiers de contrôle (cont.)


Où trouver des informations sur les Control Files Oracle :

35/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Structure de stockage : Fichiers de données

Les Fichiers de Données (Data Files)


Extention (.dbf)
Contiennent l’ensemble des données de la base
les tables
les vues
les procédures stockées
etc.
Contiennent des informations de deux types
le Dictionnaire de Données (Data Dictionnary)
les Données des Utilisateurs

36/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Structure de stockage : Fichiers de journalisation (Online


Redo Log Archive Redo Log Files)
Structurer en Group. Lorsqu’un groupe est plein on switch
automatique sur l’autre

37/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Structure de stockage : Fonctionnement Archivage

38/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Contenu d’un schéma

Correspond à un utilisateur : les deux portent le même nom


Ensemble d’objets de l’utilisateur manipulables en SQL
Exemple : tables, index, clusters, triggers, vues, dimensions,
fonctions, ...
Un objet correspond à :
plusieurs extents
un segment
un tablespace
un ou plusieurs fichiers du tablespace
Pas de correspondance schema/tablespace

39/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Stockage des tables

Pour des tables de moins de 256 attributs


si possible : un tuple est entièrement dans un block
sinon : chaı̂nage inter-blocs (augmente les E/S)
pour tes tuples de plus de 256 attributs (compris)
chaque partie de 255 tuples est chaı̂née intra-bloc (si
possible!)
Les tuples sont chaı̂nés en utilisant le ROWID
A la création d’une table, on peut :
spécifier le tablespace
spécifier la taille du segment
spécifier la quantité d’espace libre laissée dans chaque bloc

40/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Les privilèges SYSDBA et SYSOPER


Permettent d’effectuer les opérations au-dessus de la base
de données, en se connectant à l’instance
Démarrer et arrêter le serveur
Créer ou supprimer des bases de données
Changer les modes d’archivage de la base
...
Leur identification est gérée soit :
Par le SE,
l’utilisateur doit appartenir au groupe dba ou oper (ora dba et
ora oper sous WINDOWS)
connect / as sysdba ; connect / as sysoper.
Par le fichier password d’Oracle
Creer un fichier password avec l’outil ORAPWD
accorder le privilège à partir de l’utilisateur SYS
connect user/user as sysdba;
41/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Le rôle DBA

Accès au catalogue, gestion des utilisateurs, de la mémoire...


Dès la création de la base, deux utilisateurs sont créés avec le
rôle “DBA“
SYS/CHANGE ON INSTALL
Possède toutes les tables systèmes, dont le dictionnaire
Ne jamais rien écrire sur ce compte !
SYSTEM/MANAGER
Pour créer des tables d’administration uniquement
Il est fortement conseillé de spécifier d’autres mots de passe
dans la phase de création.
Ne pas utiliser dans l’administration quotidienne

42/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Informations du dictionnaire

Ensemble de tables appartenant à l’utilisateur SYS


principales informations
La définition de tous les objets et leur espace alloué
Les valeurs par défaut des attributs
Les contraintes d’intégrité
La liste des utilisateurs, leurs privilèges
Des informations d’audit sur les accès et modifications
...

43/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Structure du dictionnaire

Des tables de base, uniquement accédées par Oracle et SYS


Des vues mises à la disposition des utilisateurs (selon leurs
droits)
Vues utilisateurs : USER View. Pour les objets de l’utilisateur
qui demande
Vues d’ensemble : ALL Views. Pour une vue d’ensemble sur
les objets auxquels on a accès
Vues d’administration : DBA Views. Sur l’ensemble de la
base, uniquement SYS.
Vues dynamiques sur l’activité de la base : V$Views.

44/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Enchaı̂nement type (1)

Une instance Oracle est démarrée sur le serveur


Une application cliente etablit une connexion et ouvre une
session
Le serveur détecte la requête de connexion et crée un
processus serveur dédié
L’utilisateur lance une requête SQL et un commit
Le processus serveur recherche dans la ”shared pool“ si la
requête existe
OUI : elle sera utilisée pour répondre
NON : la nouvelle requête est insérée dans la shared pool,
analysée et executée

45/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Enchaı̂nement type (2)

Le processus serveur récupère les données


Dans le cache de données
dans les fichiers de données (et les charge dans le cache)
Le processus serveur modifie éventuellement les données dans
le cache
Puisqu’il y a validation, LGWR écrit la transaction dans le
fichier de reprise
Les changements seront répertoriés dans les fichiers de données
par DBWn
Le résultat, ou une confirmation, est envoyé au processus
utilisateur

46/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Data Dictionary

Aperçu du dictionnaire de données


Une partie importante d’une base de données Oracle est son
dictionnaire de données, qui est un ensemble de tables en
lecture seule qui fournit des métadonnées administratives sur
la base de données.
Un dictionnaire de données contient des informations
suivantes :
Définitions de chaque objet de schéma, Valeurs par défaut des
colonnes, Informations sur les contraintes d’intégrité
La quantité d’espace allouée et actuellement utilisée par les
objets du schéma.
Les noms des utilisateurs de la base de données Oracle, les
privilèges et les rôles accordés aux utilisateurs et les
informations d’audit relatives aux utilisateurs.
47/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

(Cont.)

48/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Les schémas pour Oracle
Révision générale et Installation
Identification du DBA sous Oracle
Les grands concepts
Le dictionnaire de données
Tâches élémentaires d’administration
Synthèse

Dynamic Performance Views

Tout au long de son fonctionnement, Oracle Database maintient


un ensemble de tables virtuelles qui enregistrent l’activité actuelle
de la base de données. Ces vues sont dynamiques parce qu’elles
sont continuellement mises à jour pendant qu’une base de données
est ouverte et utilisée. Les vues sont parfois appelées vues V$
parce que leur nom commence par V$.
Ces vues contiennent des informations telles que les suivantes :
System and session parameters, Memory usage and allocation
File states, Progress of jobs and tasks
SQL execution, Statistics and metrics
Ces vues sont dès fois dites fixes (Fixed View) parcequ’elles ne
peuvent pas être supprimées ou renomées par un administrateur.
49/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Créer une base de données : Préliminaires

Deux possibilités
Utiliser l’assistant Oracle : graphique
Créer manuellement à l’aide de scripts
En cas de mise à jour d’Oracle, une procédure particulière
existe
Compatibilité ascendante, on ne recrée pas les bases de
données.
Prérequis :
Oracle doit-être installé
Vous devez être administrateur du SE et de l’instance Oracle
La mémoire principale et mémoire disque doit être suffisante

50/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Créer une base de données : Planifier la base


Phase de reflexion avant création, pour faire les bons choix.
Réfléchir aux tables et indexes à venir, estimer leur taille
Planifier la distribution de ses fichiers, l’espace libre dans les
blocks
Décider entre une gestion classique ou automatique des
fichiers
Choisir l’encodage des caractères (peut-être surchargé par les
clients)
Déterminer la taille des blocs de données
Choisir le mode de gestion de l’annulation
Tablespace dédié
Segments d’annulation
Déterminer la stratégie de sauvegarde et reprise après panne 51/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Créer une base de données : Etapes de création (1/2)

Spécifier le nom de l’instance SID


Créer le fichier de paramètres PFILE (partir de l’exemple
Oracle)
Nom de la base, emplacement des fichiers de contrôle
Se connecter à l’instance inactive
SQLPLUS /nolog puis CONNECT / AS SYSDBA
Créer un fichier de paramètre serveur SPFILE (à partir du
fichier manuel)
Lancer l’instance : STARTUP NOMOUNT (Aucune
vérification de cohérence à ce niveau)
Créer la base de données : CREATE DATABASE...
52/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Créer une base de données : Etapes de création (1/2) cont.

53/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Créer une base de données : Etapes de création (2/2)

Créer de nouveaux tablespace, par exemple :


Un USERS pour les utilisateurs
un INDX pour les index
Lancer les scripts de création du dictionnaire (catalog.sql,
catproc.sql) et éventuellement d’autres scripts optionnels
Créer une sauvegarde complète de l’installation dans cet état

54/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Créer une base de données : Alternative : fichiers gérés par


Oracle

Oracle peut prendre en charge les fichiers


Spécifié dans les paramètres d’initialisation
Simplifie les commandes
L’administrateur ne gère que la partie logique : tablespace,
extents...

55/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Créer une base de données : Alternative (cont.)

56/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Créer une base de données : Précisions sur les paramètres


de l’instance (pfile)
le nom de la base ne comporte que 8 caractères
créer au moins deux fichiers de contrôles
Sur des disques différents si possible
Laisser Oracle choisir la taille des blocs
On peut contrôler la SGA
En lui fixant une taille maximale
en fixant la taille de différents composants
On peut changer plus tard, de façon dynamique
On peut fixer le nombre de processus autorisés
Nombres de processus utilisateurs + 10
On doit choisir un mode de gestion des annulations
Comment on gère les données d’annulation ? (Avant Commit)
Automatique : gérées dans un tablespace
Manuel : gérées dans les segments d’annulation 57/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Créer une base de données : Remarques complémentaires


Si la création échoue, visualier le fichier d’alertes
Arrêter l’instance
Supprimer les fichiers créés pendant la tentative
Pour supprimer une base :
Drop database
La base doit être montée et fermée
Conserve les fichiers d’archivage et les copies
Pour modifier des paramètres
Les commandes ALTER SYSTEM pour les paramètres
d’instance (modifie le SPFILE, pas le PFILE !)
Les commande ALTER DATABASE pour revenir sur les choix
du CREATE DATABASE
Pour voir les informations sur la base
Show parameters, vues ’database properties’ et V$DATABASE
58/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Créer une base de données : Configuration du réseau

Côté serveur
Un processus d’écoute utilisant un protocole réseau :
listenerSID
Un serveur BD Oracle = instance + base
Les configurations (=services d’écoute) sont enregistrées dans
listener.ora
Editable à la main, ou via outils graphiques
Côté client
Configurations (services d’accès) enregistrées dans
tnsname.ora
Permet au client de se connecter de façon transparente

59/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Oracle Listener

Database Process Server distinct qui s’exécute locallement sur


le serveur de base de données ou à distance en env RAC

60/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Oracle Listener (cont.)

Lorsqu’une demande d’un client arrive, le listener la reçoit en


premier. Ensuite, il établit une connexion entre le client et
l’instance de la base de données.
Une fois que le client est connecté à l’instance de base de
données avec succès, il transmet la connexion du client au
processus serveur.

Note
Si le listener cesse de fonctionner, vous ne pouvez plus vous
connecter à la base de données Oracle. Cependant, toutes les
connexions existantes ne seront pas affectées.

61/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Oracle Listener control commands

Pour lancer le listener control on utilise les options suivantes :


Exécuter la commande LSNRCTL depuis la ligne de
commande sur windows ou terminal sous linux.
Configurer les variables d’environnement et ajouter le oracle
home dans la Path système
Oubien lancer LSNRCTL.exe qui se situe dans
%ORACLE HOME/BIN
Tapez Help pour avoir toutes les options disponibles avec
LSNRCTL

62/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Démarrer une base de données


Oracle Enterprise Manager (OEM)
SQL*Plus
SQLplus /nolog : lancer SQL*plus
connect / as sysdba
Commande STARTUP pour démarrer l’instance
Utilise le SPFILE ou le PFILE à préciser
NOMOUNT : base fermée et non montée
MOUNT : base fermée et montée
FORCE : ouvre de force, en tuant une éventuelle instance
Commande ALTER DATABASE si l’instance est déjà
ouverte
MOUNT pour monter la base
OPEN pour ouvrir la base
OPEN READ ONLY ouverte en lecture seule
ALTER SYSTEM ENABLE RESTRICTED SESSION :
seuls les DBA peuvent ouvrir des sessions 63/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Démarrer une base de données (cont.)

Lorsque la base de données Oracle démarre une instance, elle passe


par les étapes suivantes :

La commande STARTUP nous permet de contrôler l’étape de


l’instance de la base de données.
64/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

STEP NOMOUNT
Dans l’étape NOMOUNT, Oracle effectue les étapes suivantes :
Tout d’abord recherche un fichier de paramètres par défaut.
Modifiable en utilisant les paramètres SPFILE ou PFILE de la
commande STARTUP.
Ensuite, lis le fichier de paramètres pour obtenir les valeurs
des paramètres d’initialisation.
Affecte ensuite la zone globale du système (SGA) en fonction
des paramètres d’initialisation définis.
Ensuite, lance les processus d’arrière-plan Oracle tels que
SMON, PMON et LGWR.
Enfin, ouvre les fichiers journaux d’alertes et de suivi et enregistre
tous les paramètres explicites dans le journal d’alertes dans la
syntaxe des paramètres valide.
NB : Au stade NOMOUNT, Oracle n’associe pas la base de
données à l’instance. 65/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

STEP MOUNT

Dans l’étape MOUNT, Oracle associe une base de données à une


instance. En d’autres termes, l’instance monte la base de données.
L’instance comporte les étapes suivantes pour monter une base de
données :
Obtient le nom des fichiers de contrôle de la base de données
spécifié dans le paramètre d’initialisation CONTROL FILE.
Ouvrez les fichiers de contrôle.
Trouvez le nom des fichiers de données (Data Files) et les
fichiers de redirection en ligne (Redo Log File).
NB : Lorsqu’une base de données est montée, elle n’est accessible
qu’aux administrateurs de base de données, et non à tous les
utilisateurs.
66/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

STEP OPEN

Lors de la phase OPEN, Oracle effectue les actions suivantes :


Tout d’abord, ouvre les fichiers de données en ligne dans des
tablespaces autres que les tablespaces d’annulation (UNDO
tablespace).
Ensuite, sélectionne un espace de table Annuler. L’instance
utilise l’espace de table annulé par défaut si un espace de
table annulé est spécifié dans le paramètre d’initialisation
UNDO TABLESPACE. Sinon, il sélectionnera le premier
espace de table d’annulation disponible.
Enfin, ouvrez les fichiers redo log en ligne.
NB : Lorsqu’Oracle ouvre une base de données montée, celle-ci est
disponible pour des opérations normales.
67/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Synthèse
Ceci illustre le processus de démarrage de la base de données Oracle :

68/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Oracle STARTUP Command

STARTUP
Syntaxe basique equivalent du OPEN si on ne met rien
STARTUP OPEN
STARTUP STAGE
STARTUP NOMOUNT
STARTUP MOUNT
Pour changer de stage on utilise la commande ALTER
DATABASE STAGE
Ici STAGE = (OPEN ou MOUNT or NOMOUNT)

69/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Oracle Instance Status

La requête suivante nous donne le statut courrant de notre


instance de base de données.

70/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Fermer une base de données


Commande SHUTDOWN
Garde la main jusqu’à l’arrêt complet
Plus personne ne peut se connecter
Plusieurs modes d’arrêt :
NORMAL : attend la déconnexion de tous les utilisateurs
IMMEDIATE : annule toutes les transactions non validées et
tue les sessions en cours
TRANSACTIONAL : attend la fin des transactions puis tue les
sessions
ABORT : tue les sessions, mais n’annule pas les transactions
non validées
ABORT est à utiliser en dernier recours
ABORT nécessite une restauration de la base pour retrouver sa
cohérence
On peut suspendre une base de données : ALTER SYSTEM
SUSPEND/RESUME 71/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

SHUTDOWN SCHEMA ILLUSTRATE

72/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Oracle TABLESPACE

Oracle divise une base de données en une ou plusieurs unités


de stockage logiques appelées tablespaces.
Chaque espace de table est constitué d’un ou plusieurs fichiers
appelés fichiers de données (data files). Un fichier de données
stocke physiquement les objets de données de la base de
données tels que les tables et les index sur disque.
En d’autres termes, Oracle stocke logiquement les données
dans les tablespaces et stocke physiquement les données dans
des fichiers de données associés aux tablespaces
correspondants.
L’image suivante illustre la relation entre une base de
données, des tablespaces et des fichiers de données :
73/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Oracle Tablespace (Cont.)

74/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Tablespace (Cont.)
En utilisant les tablespaces, vous pouvez effectuer les opérations
suivantes :
Contrôlez la taille de stockage allouée aux données de la base
de données.
Accorder des quotas d’espace spécifiques aux utilisateurs de la
base de données.
Contrôler la disponibilité des données en prenant les
tablespaces en ligne ou hors ligne (plus d’informations à ce
sujet ultérieurement).
Améliorer les performances de la base de données en allouant
le stockage des données entre les périphériques.
Effectuer une sauvegarde ou une restauration partielle de la
base de données. 75/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Default tablespaces in Oracle

Oracle est livré avec les tablespaces par défaut suivants :


SYSTEM, SYSAUX, USERS, UNDOTBS1 et TEMP.
SYSTEM et SYSAUX stockent les objets générés par le
système tels que les tables de dictionnaire de données. Et
vous ne devez stocker aucun objet dans ces tablespaces.
USERS est utile pour les utilisateurs
UNDOTBS1 conserve les données d’annulation.
TEMP est l’espace de table temporaire qui est utilisé pour
stocker les résultats intermédiaires des opérations de tri, de
hachage et de traitement des objets volumineux.

76/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Online and Offline Tablespaces

Un tablespace peut être en ligne ou hors ligne. Si un espace de


table est hors ligne, vous ne pouvez pas accéder aux données
qui y sont stockées. Par contre, si un espace de table est en
ligne, ses données sont disponibles pour la lecture et l’écriture.
Notez que l’espace de table SYSTEM doit toujours être en
ligne car il contient le dictionnaire de données qui doit être
disponible pour Oracle.
Normalement, un espace de table est en ligne pour que ses
données soient disponibles aux utilisateurs. Toutefois, vous
pouvez prendre un tablespace hors ligne pour rendre les
données inaccessibles aux utilisateurs lorsque vous mettez à
jour et gérez les applications.
77/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

More on Oracle Tablespaces

Create tablespace - Montre comment créer un nouvel espace


de table dans la base de données.
Drop tablespace - Décrit les étapes de suppression d’un
espace de table
Extend tablespace - Comment étendre la taille d’un espace
de table.
Temporary tablespace - Manipule efficacement l’espace de
table temporaire.
Tablespace group - Comment utiliser plus efficacement le
groupe tablespace pour optimiser les opérations internes
d’Oracle
78/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Oracle CREATE TABLESPACE

L’instruction CREATE TABLESPACE vous permet de créer un


nouvel espace de table. Ce qui suit illustre comment créer un
nouvel espace de table nommé tbs1 avec une taille de 1MB :

Après création on peut avoir la liste des tablespace


SELECT tablespace name, file name, bytes / 1024/
1024 MB FROM dba data files;

79/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Tablespaces and CREATE TABLE statement

Lorsque vous créez une nouvelle table, Oracle place


automatiquement la table dans l’espace de table par défaut de
l’utilisateur que vous utilisez pour créer la table. Toutefois, vous
pouvez spécifier explicitement l’espace de table auquel la table
appartient comme indiqué dans la requête suivante :

80/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Cont.
Considérons l’exemple suivant :
Create table t1 with tablspace tbs1

Insérer 10000 lignes dans la table t1

81/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Cont.
Considérons l’exemple suivant :
Troisièmement, regarder l’espace libre dans tbs1

En 4 Insérer encore 10000 lignes dans la table t1

82/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Cont.

Considérons l’exemple suivant :


On aura l’erreur suivante :

Pour corriger cela, on redimensionne le tablespace en utilisant


ALTER DATABASE :

83/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Cont.

La deuxième façon d’éviter ce problème, lorsque vous créez un


nouvel espace de table, vous pouvez utiliser la clause
AUTOEXTEND ON comme suit :

84/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Oracle DROP Tablespace

DROP TABLESPACE tablespace name


Drop an empty tablespace
DROP TABLESPACE name INCLUDING CONTENTS;
IF tablespace is not empty
DROP TABLESPACE name INCLUDING CONTENTS AND
DATAFILES CASCADE CONSTRAINTS;
Si notre tablespace a des contraintes avec d’autres tables liées
à d’autres tablespaces

85/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Oracle Extend Tablespace

En ajoutant un new datafile

AUTOEXTEND ON va permettre à Oracle d’étendre au-


tomatiquement la taille du fichier de données en cas de besoin :

86/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Introduction

Il faut toujours avoir à l’esprit une politique de sécurité


Assurée par le DBA, ou un administrateur dédié
Principales tâches :
Gérer les utilisateurs
Affecter les ressources : tablespaces, quotas, ...
Gérer les privilèges et les rôles
Surveiller l’usage de la base de données (Audit)
Deux niveaux de sécurité
Les comptes utilisateurs : login et mot de passe
Rôles, privilèges et profils : contrôle l’accès aux objets et aux
commandes systèmes
Sans oublier la sécurité du SE pour les fichiers, et la sécurité
”physique“ des serveurs...
87/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Les 10 Commandements (d’Oracle)

N’installer que ce qui est nécessaire

88/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Cont.

N’installer que ce qui est nécessaire


Sécuriser les compte par défaut après installation

89/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Cont.

N’installer que ce qui est nécessaire


Sécuriser les compte par défaut après installation
Utiliser des mots de passe sécurisés, renouveler régulièrement

90/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Cont.

N’installer que ce qui est nécessaire


Sécuriser les compte par défaut après installation
Utiliser des mots de passe sécurisés, renouveler régulièrement
S’assurer que O7 DICTIONARY ACCESSIBILITY=FALSE

91/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Cont.

N’installer que ce qui est nécessaire


Sécuriser les compte par défaut après installation
Utiliser des mots de passe sécurisés, renouveler régulièrement
S’assurer que O7 DICTIONARY ACCESSIBILITY=FALSE
Toujours accorder le minimum de privilèges aux utilisateurs

92/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Cont.

N’installer que ce qui est nécessaire


Sécuriser les compte par défaut après installation
Utiliser des mots de passe sécurisés, renouveler régulièrement
S’assurer que O7 DICTIONARY ACCESSIBILITY=FALSE
Toujours accorder le minimum de privilèges aux utilisateurs
S’assurer que remote os authentication=FALSE

93/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Cont.

N’installer que ce qui est nécessaire


Sécuriser les compte par défaut après installation
Utiliser des mots de passe sécurisés, renouveler régulièrement
S’assurer que O7 DICTIONARY ACCESSIBILITY=FALSE
Toujours accorder le minimum de privilèges aux utilisateurs
S’assurer que remote os authentication=FALSE
S’assurer de la sécurité du SE

94/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Cont.

N’installer que ce qui est nécessaire


Sécuriser les compte par défaut après installation
Utiliser des mots de passe sécurisés, renouveler régulièrement
S’assurer que O7 DICTIONARY ACCESSIBILITY=FALSE
Toujours accorder le minimum de privilèges aux utilisateurs
S’assurer que remote os authentication=FALSE
S’assurer de la sécurité du SE
S’assurer de la sécurité du réseau (Ex. : SSL)

95/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Cont.

N’installer que ce qui est nécessaire


Sécuriser les compte par défaut après installation
Utiliser des mots de passe sécurisés, renouveler régulièrement
S’assurer que O7 DICTIONARY ACCESSIBILITY=FALSE
Toujours accorder le minimum de privilèges aux utilisateurs
S’assurer que remote os authentication=FALSE
S’assurer de la sécurité du SE
S’assurer de la sécurité du réseau (Ex. : SSL)
Appliquer les correctifs de sécurité d’Oracle
http://otn.oracle.com/deploy/security/alerts.htm

96/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Cont.

N’installer que ce qui est nécessaire


Sécuriser les compte par défaut après installation
Utiliser des mots de passe sécurisés, renouveler régulièrement
S’assurer que O7 DICTIONARY ACCESSIBILITY=FALSE
Toujours accorder le minimum de privilèges aux utilisateurs
S’assurer que remote os authentication=FALSE
S’assurer de la sécurité du SE
S’assurer de la sécurité du réseau (Ex. : SSL)
Appliquer les correctifs de sécurité d’Oracle
http://otn.oracle.com/deploy/security/alerts.htm
Signaler les failles à secalert us@oracle.com
97/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Types d’utilisateurs

Un compte utilisateur = Un schéma de BD


C’est un ensemble de d’objets : tables, vues, index,...
L’utilisateur crée, modifie,... ses objets
On peut créer des utilisateurs ”simples”
Droits de requêtes sur un schéma précis
Pas de droits de créations

98/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Etapes de création

Choisir un nom et un mode d’identification


Identification Oracle ou SE (EXTERNALLY)
Identifier les tablespaces : trois en général
Données = tablespace par défaut de l’utilisateur
Tris = tablespace temporaire
Index = tablespace dédié aux index en général
Décider les quotas pour chaque tablespace
Créer l’utilisateur
Accorder les rôles et privilèges

99/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Modification et suppression

Modifications avec l’ordre ALTER USER


Changement de mot de passe
Suppression ou modification de quotas
Changement de tablespace
Gestion des droits
Supression avec DROP USER
Option CASCADE : supprime aussi les objets
Impossible de supprimer un utilisateur connecté
Vues DBA USERS, DBA TS QUOTAS

100/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Gestion des droits : les profils

Ensemble nommé de limites de ressources


Nombre de connexions simultanées,...
Limitation de mot de passe : FAILED LOGIN ATTEMPTS,
PASSWORD LIFE TIME, PASSWORD LOCK TIME,
PASSWORD REUSE TIME, etc...
Ils sont affectables aux utilisateurs
Opérations possibles :
Création, modification, supression
Activation/désactivation
Vues DBA USERS, DBA PROFILES

101/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Les profils (Cont.)

Mise en place

Puis assigner profil à un user

102/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Gestion des droits : les privilèges

Granularité fine des droits


Systèmes : opérations sur la base ou un type d’objet (plus de
100)
Objets : opération sur un objet précis
Accordés avec l’ordre GRANT, retirés avec l’ordre REVOKE
vues DBA SYS PRIVS, SESSION PRIVS,
DBA TAB PRIVS, DB ACOL PRIVS

103/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Gestion des droits : les rôles

Ensembles de privilèges, pour simplifier leur gestion


créés et supprimés comme des utilisateurs
Accordés avec l’ordre GRANT, retirés avec l’ordre REVOKE
Peuvent être accordés/retirés d’une session
Quelques conseils
Un rôle pour chaque tâche d’application
Un rôle pour chaque type d’utilisateur
etc...
vues DBA ROLES, DBA ROLE PRIVS,
ROLE ROLE PRIVS,...

104/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

L’audit sous Oracle

Pour surveiller des activités ciblées sur la base


Possible sur toute action sur la base
Tentatives de login
Accès aux objets
Actions bases de données
Enregistré dans la table SYS.AUD$, ou dans le SE
Activation dans les paramètres d’instance (AUDIT TRAIL) :
none (default), os, db, xml, etc...

105/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Exemples d’audit

Audit de logins
AUDIT SESSION WHENEVER NOT SUCCESSFULL
Audit d’actions
AUDIT update table BY SCOTT
Commandes DML sur un objet
AUDIT insert ON username.tablename
résultats dans DBA AUDIT SESSION,
DBA AUDIT OBJECT,

106/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Assurer la pérennité des données

La pérennité des données est assurée par :


Les fichiers de reprise
En cas de panne d’instance
Les sauvegardes de fichiers
A froid : instance éteinte, à partir du SE
Pour les pannes de disque, pertes de fichiers
L’archivage
Réalisé à chaud par l’instance
Archive tous les fichiers de reprise
Seule solution pour sécurité totale
Augmente la charge du DBA

107/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Assurer la pérennité des données : Sauvegarde à froid

La plus simple à mettre en oeuvre


1 : identifier les fichiers de données/reprise/contrôle
2 : Arrêter la base de données
3 : Sauvegarder tous les fichiers avec le SE
4 : Redémarrer la base
En cas de panne : il suffit de reprendre ces fichiers
Intéressant dans des bases avec peu de modifications

108/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Sauvegarde à chaud

Fichiers de données
Fichiers de contrôle
ATTENTION : a faire en mode archivage automatique
Sinon pas de restauration possible

109/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Archivage automatique

Dépend de la politique locale vis-à-vis des données


Peut-on envisager une perte de données
Si oui, quelle est la durée tolérable ?
Assure une cohérence parfaite des données en cas de panne
Effectué à chaque basculement de groupe dans les logs
Possibilité de le lancer ponctuellement ”à la main“
ALTER SYSTEM ARCHIVE LOG (déconseillé)

110/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

La restauration

Sans le mode archivage


Perte des données depuis la dernière sauvegarde
Restauration complète
En mode archivage
Restauration complète ou non
Perte de fichiers de données ou du fichiers de contrôle

111/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Restauration complète sans archivage

1 : Fermer la base
2 : Restaurer tous les fichiers de la sauvegarde la plus récente
3 : Ouvrir la base
Si les emplacements ont changé, modifier les déclarations
avant de monter la base

112/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Restauration avec archivage

Commande RECOVER
Possibilité de restaurer :
Toute la base
des tablespaces
le fichier de contrôle des fichiers de données
A partir :
des fichiers de reprise archivés et
de la sauvegarde la plus récente

113/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation Créér une base de données
Les grands concepts Démarrer et arrêter une base de données
Tâches élémentaires d’administration Assurer la sécurité des données

Restauration partielle

Ouvrir la base
Désactiver les tablespace (offline)
Réparer la panne disque
Restaurer seulement les fichiers endommagés
Lancer la restauration
RECOVER TABLESPACE/DATAFILE
Activer le tablespace

114/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle
Révision générale et Installation
Les grands concepts
Tâches élémentaires d’administration

115/ 115
M. Serigne NDIAYE Administration des bases de données sous Oracle

Vous aimerez peut-être aussi