CDB & PDB
CDB & PDB
oracle
CDB & PDB
Réalisé par :
Hamza ACHCHARIF
Khawla DAROUICH
Omar JIBAR
Encadré par :
M. Kamal EL GUEMMAT
Année Universitaire : 2020-2021
Sommaire
Table des matières
CDB & PDB..........................................................................................................................................1
Sommaire...............................................................................................................................................2
Introduction............................................................................................................................................3
NON-CDB..............................................................................................................................................3
Définition...........................................................................................................................................4
Limites................................................................................................................................................4
Oracle Multitenant..................................................................................................................................5
Définition...........................................................................................................................................5
Avantage de l’architecture Multitenant..............................................................................................6
CDB........................................................................................................................................................7
Définition...........................................................................................................................................7
Les conteneurs dans une CDB...........................................................................................................7
Création d’un CDB.............................................................................................................................8
PDB........................................................................................................................................................9
Définition...........................................................................................................................................9
Création d’un PDB.............................................................................................................................9
Création d'un PDB à partir de Seed..................................................................................................10
Création d'un PDB par clonage d'un PDB ou d'un non-CDB..........................................................12
Création d'un PDB en branchant un PDB débranché.......................................................................13
À partir d'un Non-CDB....................................................................................................................14
Nouveaux rôles dans CDB...............................................................................................................15
TP : CDB & PDB.................................................................................................................................15
Objectif.............................................................................................................................................15
Conception.......................................................................................................................................16
Modèle conceptuel de données....................................................................................................16
Modèle logique de données..........................................................................................................16
Modèle Physique de données.......................................................................................................17
Création du CDB..............................................................................................................................17
Création du PDB..............................................................................................................................25
Création des tables...........................................................................................................................26
Conclusion............................................................................................................................................30
P a g e 2 | 32
Introduction
P a g e 3 | 32
NON-CDB
Définition
Dans une NON-CDB, 100 serveurs peuvent avoir chacun une base de données, chaque base de
données utilisant 10 % des ressources matérielles et 10 % du temps d'un administrateur. Une
équipe de DBA doit gérer le SGA, les fichiers de base de données, les comptes, la sécurité, etc. de
chaque base de données séparément, tandis que les administrateurs système doivent gérer 100
ordinateurs différents.
Pour montrer le problème à une échelle réduite prenons la figure sui-dessus qu’elle décrit 11 bases
de données, chacune avec sa propre application et son propre serveur. Un DBA en chef supervise
une équipe de quatre DBA, chacun étant responsable de deux ou trois bases de données.
Limites
Oracle Multitenant
Définition
L'architecture mutualisée permet à une base de données Oracle de fonctionner comme une base
de données de conteneurs mutualisée (CDB).
● Cette option permet de consolider les données et le code sans modifier les schémas ou
applications existants.
● La consolidation de base de données est le processus de consolidation des données de
plusieurs bases de données en une seule base de données sur un ordinateur
Sans multitenant
Serveur
Avec Multitenant
Serveur
CDB
SGA
Dans une architecture multitenant seulement le CDB contient la mémoire SGA et les processus
d’arrière-plan et ils sont partagées par tous les PDBs et alors cela nécessite moins de ressources.
P a g e 6 | 32
2. Mouvement plus facile et plus rapide des données et du code
Par leur conception, vous pouvez brancher un PDB dans un CDB, débrancher le PDB du CDB,
puis brancher ce PDB dans un autre CDB. La technique de mise en œuvre pour le
branchement et le débranchement est similaire à la technique des tablespaces
transportables.
CDB
Définition
Une CDB comprend zéro, une ou plusieurs bases de données enfichables (PDB) créées par le client.
Un PDB est une collection portable de schémas, d'objets de schéma et d'objets hors schéma qui
apparaît à un client Oracle Net comme un non-CDB. Toutes les bases de données Oracle avant
Oracle Database 12c étaient des non-CDB.
P a g e 7 | 32
Un conteneur est soit un PDB, soit la racine. Le conteneur racine est une collection de schémas,
d'objets de schéma et d'objets hors schéma auxquels appartiennent tous les PDB. Chaque CDB
possède :
La figure si dessus montre une CDB avec quatre conteneurs : la racine, la graine et deux PDB.
Chaque PDB a sa propre application dédiée. Un administrateur PDB différent gère chaque PDB. Un
utilisateur commun existe dans une CDB avec une seule identité. Dans cet exemple, l'utilisateur
commun SYS peut gérer la racine et chaque PDB. Au niveau physique, cette CDB possède une
instance de base de données et des fichiers de base de données, tout comme une non-CDB.
Le graphique ci-dessus montre une CDB nouvellement créée : Avec le conteneur racine
(CDB$ROOT), Oracle Database crée automatiquement un PDB de départ (PDB$SEED)
La requête Select NAME, CDB, CON_ID FROM V$DATABASE ; détermine si la base de données à
laquelle un utilisateur administratif est actuellement connecté est une non-CDB ou un conteneur
dans une CDB
PDB
Définition
Un PDB est une collection portable de schémas, les objets de schéma et les objets hors schéma qui
apparaissent pour un client Oracle Net en tant que non-CDB. Toutes les bases de données Oracle
avant Oracle Database 12c étaient des Non-CDB.
P a g e 9 | 32
Création d’un PDB
La commande CREATE PLUGGABLE DATABASE SQL permet la création d'un PDB. Ce PDB inclut
automatiquement un dictionnaire de données complet comprenant des métadonnées et des liens
internes vers des objets fournis par le système à la racine. Vous ne pouvez créer un PDB que dans
un CDB et non dans un autre PDB.
La figure suivante montre une CDB qui contient six PDB. Hrpdb est un PDB nouvellement créé.
Salespdb était un PDB préexistant qui a été débranché d'un autre CDB et connecté à ce CDB. Les
quatre PDB restants, dont chacun des noms contient le préfixe test, ont été copiés à partir de
salespdb.
P a g e 10 | 32
L'instruction SQL suivante crée un PDB nommé hrpdb à partir du SEED à l'aide d'Oracle Managed
Files :
P a g e 11 | 32
Création d'un PDB par clonage d'un PDB ou d'un non-CDB
Vous pouvez utiliser l'instruction CREATE PLUGGABLE DATABASE pour cloner un PDB source ou
non-CDB et connecter le clone à la CDB.
La source peut être un PDB dans un CDB local ou distant, ou à partir d'Oracle Database 12c Release
1), il peut également s'agir d'un non-CDB distant. Cette technique copie les fichiers associés au PDB
source ou non-CDB vers un nouvel emplacement et associe les fichiers copiés au nouveau PDB.
Le graphique suivant illustre le clonage d'un PDB à partir d'un PDB existant dans le même CDB.
Si le système de fichiers d'un PDB prend en charge les snapshots de stockage, vous pouvez spécifier
la clause SNAPSHOT COPY pour cloner un PDB à l'aide des snapshots de stockage. Dans ce cas,
Oracle Database ne fait pas une copie complète des fichiers de données source, mais crée un
snapshot au niveau du stockage du système de fichiers et l'utilise pour créer des clones PDB. Les
copies snapshot rendent le clonage presque instantané.
L'instruction SQL suivante clone un PDB nommé salespdb à partir du PDB connecté nommé hrpdb :
P a g e 12 | 32
Création d'un PDB en branchant un PDB débranché
Dans son état débranché, un PDB est un ensemble autonome de fichiers de données et un fichier
de métadonnées XML. Cette technique utilise le fichier de métadonnées XML qui décrit la PDB et les
fichiers associés à la PDB pour l'associer à la CDB.
La figure suivante illustre le branchement d'un PDB débranché.
L'instruction SQL suivante connecte un PDB nommé finance pdb sur la base des métadonnées
stockées dans le fichier XML nommé et spécifie NOCOPY car les fichiers du PDB déconnecté n'ont
pas besoin d'être renommés :
P a g e 13 | 32
À partir d'un Non-CDB
Vous pouvez déplacer un non-CDB dans un PDB.
Vous pouvez accomplir cette tâche des manières suivantes :
Exécution de DBMS_PDB.DESCRIBE sur un non-CDB dans Oracle Database 12c
Vous placez un non-CDB dans un état cohérent sur le plan transactionnel, puis exécutez la
fonction DBMS_PDB.DESCRIBE pour générer des métadonnées XML sur cette base de
données. Une fois connecté à la racine dans la CDB, vous exécutez l'instruction CREATE
PLUGGABLE DATABASE pour créer une PDB à partir de la non-CDB existante. Enfin, pour
convertir les définitions du dictionnaire de données PDB en références à des objets dans
CDB$ROOT, connectez-vous à la PDB et exécutez le script noncdb_to_pdb.sql.
P a g e 14 | 32
Nouveaux rôles dans CDB
Dans une base de données normale Non-CDB, les différents types d'utilisateurs qui existe sont :
Admin de base de données (SYS ADMIN)
Utilisateurs normaux.
Dans l'architecture multitenent, il y a une autre couche d'utilisateurs (CDB ADMIN), ce sont les
utilisateurs responsables de l'administration de tout le conteneur, ils peuvent cloner un PDB,
éteindre un PDB, créent un nouveau PDB, etc.
Le CDB Admin est l'utilisateur capable de jouer avec le conteneur, c'est comme l'utilisateur SYS qui
existait dans les Non-CDB (le super utilisateur)
Les PDB puisqu'ils sont vus comme des Non-CDB de l’extérieur il garde tous les types des
utilisateurs qu'une non- CDB support. Par contre, les SYS ADMIN ont les appellent des PDB Admins
dans l'architecture multitenent et il y a aussi les utilisateurs normaux.
P a g e 15 | 32
Conception
Modèle conceptuel de données
P a g e 16 | 32
Modèle Physique de données
Création du CDB
Commençons notre démo en lançant « Database Configuration Assistant » qui est fortement
recommandé pour la création d’une nouvelle CDB.
En installant oracle au début de semestre nous avons déjà créer une CDB que nous avons appelée
GLSID. Maintenant nous allons procéder d’en créer une nouvelle. C’est parti !
1.Cochez l’option « Créer une base de données » dans la fenêtres « Opération de base de dnnée »
P a g e 17 | 32
2-Vous sélectionner «Configuration avancée »puis suivant
4-Vous spécifier le nom global de votre base de donnée dans mon cas ca sera « apdb »
P a g e 18 | 32
5-Vous cocher l’option « Utiliser ce qui suit pour les attributs de stockage de données »,puis vous
cochez l’option utiliser des fichiers OMF et vous cliquez après « Multiplier les fichiers de
journalisation et les fichiers de contrôle »
Vous remplissez les liens des deux emplacements des fichiers redolog.Dans mon cas les liens sont
: F:\App\oracle\product\19.3.0\oradata\apdb\redo1
F:\App\oracle\product\19.3.0\oradata\apdb\redo2
6-Vous sélectionnez l’Archivage automatique d’oracle et vous spécifier la destination des fichiers
journaux d’archivage
P a g e 19 | 32
7-Vous sélectionnez le processus d’écoute déjà existant dû à la première installation.
-
8-En raison des objectifs de cette activité nous laissons cette partie vide sans spécifier les meusures
de sécurité
P a g e 20 | 32
Vous laissez les choix par défaut concernant le redimensionnement et le jour de caractères
P a g e 21 | 32
-Nous choisissons le mode serveur dédié.
-Vous pouvez ajouter ou non les schémas échantillon à votre nouvelle base de données.
P a g e 22 | 32
11-Par préférences Vous utiliserez un même mot de passe
15-Et Voilaaa !
P a g e 24 | 32
Création du PDB
Création d’une PDB dans notre nouvelles CDB APDB avec sql plus en suivant les
étapes suivantes :
On se connect à notre CDB via SQL Plus pui on verifie le nom :
Puis nous passons notre requête pour créer notre PDB que l’on va appeler ADM1
P a g e 25 | 32
Maintenat nous allons insérer les table de notre base de donnée :
Table countries
P a g e 26 | 32
Table locations
Table departments
P a g e 27 | 32
Table jobs
Table employees
Table departments
Table job_history
P a g e 28 | 32
P a g e 29 | 32
Conclusion
La consolidation de bases de données consiste à placer
plusieurs bases de données sur un seul ensemble
d'infrastructure informatique, sur site ou dans le Cloud
Oracle. La consolidation de bases de données est similaire
mais différente de la consolidation de serveurs, qui
implique la consolidation plusieurs serveurs physiques en
un seul serveur physique exécutant des machines virtuelles.
L'objectif principal de la consolidation de base de données
est de réduire le coût de l'infrastructure de base de
données en tirant parti des serveurs plus puissants qui sont
arrivés sur le marché qui inclure des dizaines de cœurs de
processeur dans un seul serveur.
P a g e 30 | 32
P a g e 31 | 32
P a g e 32 | 32