ARCHITECTURE ORACLE 12C Pr. A. MESRAR
Plan Présentation du serveur Oracle Instance Oracle Structure Mémoire Processus d’arrière plan Base de données Structure Physique Structure Logique Scénario d’exécution d’une requête Single & Multiple Architecture Architecture Multitenant
Présentation du serveur Oracle Un serveur Oracle est: un système de gestion de base de données qui offre une méthode de gestion des informations ouverte, complète et intégrée constitué d'une instance et d'une base de données
Instance Oracle PMONSMONOthers Instance RECOARCn DBWn LGWRCKPT Database buffer cache Mémoire partagée Cache du dictionnaire de données cache Library SGA Redo log buffer Une instance Oracle : permet d'accéder à une base de données Oracle, n'ouvre qu'une seule base de données, est constituée de structures de processus d'arrière-plan et de structures mémoire. Structures mémoire Structures de processus d'arrière-plan
Instance : Structure mémoire La structure mémoire d'Oracle est constituée des deux zones de mémoire suivantes : la mémoire SGA, qui est allouée au démarrage de l'instance et qui est une composante fondamentale d'une instance Oracle la mémoire PGA, qui est allouée au démarrage du processus serveur
Instance : Structure mémoire - Shared pool PMONSMONOthers Instance RECO ARCn DBWn LGWRCKPT Database buffer cache Shared pool Data dictionary cache Library cache SGA Redo log buffer La Shared Pool se découpe en 2 blocs : La Library Cache : les ordres SQL exécutés Le Dictionnary Cache : la structure, les privilèges liés aux objets
Instance : Structure mémoire -Database Buffer Cache PMONSMONOthers Instance RECO ARCn DBWn LGWRCKPT Database buffer cache Shared pool Data dictionary cache Library cache SGA Redo log buffer Ce cache permet de stocker les blocs de données utilisés par les requêtes
Instance : Structure mémoire - Log Buffer Cache PMONSMONOthers Instance RECO ARCn DBWn LGWRCKPT Database buffer cache Shared pool Data dictionary cache Library cache SGA Redo log buffer Il enregistre toutes les requêtes de MAJ Ces requêtes seront enregistrées dans les fichiers de journalisation
Instance : Structure mémoire - Large pool Large pool I/O buffer Response queue Request queue Free memory Java pool Large pool Shared pool Database buffer cache Redo log buffer Streams pool Zone facultative de la mémoire SGA Serveur partagé Les opérations de sauvegarde et de restauration ou RMAN
Instance : Structure mémoire - Mémoire PGA Utilisée par les processus serveur ou d'arrière plan Elle contient : La zone de tri : appelée SORT AREA Les informations de sessions Vous pourrez modifier la taille de la SORT AREA en changeant la valeur du paramètre SORT_AREA_SIZE. Processus utilisateur PGA Processus serveur
Le vue V$MEMORY_DYNAMIC_COMPONENTS, La vue V$MEMORY_DYNAMIC_COMPONENTS, permet de visualiser les différentes valeurs de chaque pool, entre autre la shared_pool, le database buffer cache, le large pool, etc … Select component, current_size, min_size, max_size from v$memory_dynamic_components ;
Structures de processus Oracle utilise différents types de processus : le processus utilisateur, qui est démarré au moment où un utilisateur de la base de données tente de se connecter au serveur Oracle, le processus serveur, qui établit la connexion à l'instance Oracle et démarre lorsqu'un utilisateur ouvre une session, les processus d'arrière-plan, lancés au démarrage d'une instance Oracle.
Etablir une connexion et créer une session Session crée Processus utilisateur Processus serveur Connexion établie Utilisateur
Database writer - DBWn Le processus DBWn ou Database Writer dédié à l'écriture du Database Buffer Cache dans les fichiers de données de la base de données.
Log Writer - LGWR Le processus Log Writer est le processus qui va écrire les informations contenues dans le REDO LOG Buffer dans les fichiers de journalisation REDOLOG FILE lors des événements suivant :
CheckPoint - CKPT Ce processus sert à mettre à jour les en-têtes des fichiers de données, et mettre à jour les fichiers CONTROL FILE afin de spécifier que l'action de CHECKPOINT s'est bien déroulée
System Monitor - SMON Récupération de l'instance : o Ré-implémente des modifications dans les fichiers de journalisation, o Ouvre la base de données pour permettre l'accès aux utilisateurs, o Annule les transactions non validées. Fusion de l'espace libre Libération des segments temporaires segments
Program Monitor - PMON Suite à l'échec de processus utilisateur, PMON exécute des opérations de nettoyage : Annule la transaction Libère des verrous
Archiver - ARCn Ce processus permet d’archiver les fichier de journaux. L’archivage est automatique en mode ARCHIVELOG Fichiers journalisation archivés Fichiers journalisation ARCn
Autres processus d’arrière plan Job Queue Coordinator (CJQ) : utilisé par le Scheduler, il génère les processus pour exécuter les jobs planifiés qui se trouvent dans la file d’attente interne d’Oracle Memory Manager (MMAN) : il agit comme un distributeur de mémoire et coordonne la taille allouée aux différents composants
Base de données Oracle Une base de données Oracle contient : Structure physique Structure logique
Structure physique La structure physique comprend trois types de fichier : Fichiers de contrôle Fichiers de données Fichiers de journalisation Fichiers de contrôle Fichiers de Données Fichiers de journali- sation
Autres fichiers de la base de données Password file Parameter fileArchived redo log files Alert log and trace files Backup files
Autres fichiers de la base de données Le répertoire /app/oracle/oradata/cdb1/ contient les fichiers de la base de données « cdb1» Le répertoire /app/oracle/admin/cdb1/ contient les répertoires destinés aux exports Data Pump ou non de la base de données ainsi qu’au fichier de paramètre utilisé lors de la création de la base de données « cdb1 ». /app/oracle/admin/cdb1/ Adump Dpdump pfile xdb_wallet le répertoire /app/oracle/diag/ contient les répertoires : /app/oracle/diag/rdbms/cdb1/cdb1/ Alert dans lequel est stocké le fichier des alertes en format xml trace contient un ensemble de fichiers de traces de l’instance
Autres fichiers de la base de données Le répertoire /app/oracle/flash_recovery_area/cdb1/ contient les fichiers de multiplexés, Le répertoire /app/oracle/product/ /db_1 contient les répertoires des binaires d’oracle. On y retrouve les répertoires BIN qui contient les binaires d’oracle et certains outils comme « sqlplus.exe ». sous unix, Dbs contient les fichiers de mot de passe et SPFILE, network qui contient le listener et tnsnames.ora
Structure logique Database LogiquePhysique Tablespace Data file Segment Extent Oracle data block Schema OS block
Scénario
Security Admin Network Admin System Admin Database Admin
Administrateurs Oracle Security Admin Network Admin System Admin Database Admin 01. Installation des logiciels 02. Gestion de l'instance 03. Sauvegarde et restauration 04. Contrôle d'activité et automatisation de l'administration 01. Structures de la base de données 02. Création, modification, et suppression de bases de données 03. Les tables 04. Les index 05. Traitement des requêtes et mécanismes transactionnels 06. L'outil de chargement SQL*Loader 07. La technologie Data Pump 01. Configuration réseau et répartition des données 01. Gestion des utilisateurs et sécurité Architecture d'Oracle Security Admin Network Admin System Admin Database Admin
Architecture RAC Vs Single Instance
Container Database CDB Solution Oracle 12c : Architecture Multitenant (CDB, PDBs) Une CDB contient plusieurs PDBs Migration facile Clonage PDB Application de patch sur la CDB implique les PDBs incluses