Oracle
| Fiche express | |
|---|---|
| Éditeur | Oracle Corporation |
| Type | SGBDR (système de gestion de base de données relationnelle) |
| Éditions | Enterprise Edition · Standard Edition 2 · Express Edition (XE) / Database Free |
| Architecture | Instance (mémoire + processus) + base de données (fichiers) |
| Voir aussi | Instance · Oracle net · Asm · Rman · RAC · Exadata |
Oracle Database est le système de gestion de base de données relationnelle (SGBDR) édité par Oracle Corporation. C'est l'une des bases de données propriétaires les plus répandues en environnement d'entreprise, en particulier sur Unix/Linux, avec un écosystème très large : haute disponibilité (RAC), stockage dédié (ASM), sauvegarde (RMAN, Datapump), appliance matérielle (Exadata) et son propre langage procédural (PL/SQL).
Cette page sert de point d'entrée général vers les différentes sous-thématiques Oracle du wiki ; voir les pages dédiées pour le détail de chaque sujet.
Instance vs base de données
Oracle distingue deux notions souvent confondues :
- la base de données : l'ensemble des fichiers physiques sur disque (fichiers de
données, fichiers de contrôle, fichiers de journalisation) ;
- l'instance : les structures mémoire (SGA/PGA) et les processus d'arrière-plan qui
permettent d'accéder à cette base. Voir Instance pour le détail des états NOMOUNT/MOUNT/OPEN et des commandes de démarrage/arrêt.
En configuration standalone, une instance sert une seule base. En RAC (Real Application Clusters), plusieurs instances sur des nœuds différents peuvent servir la même base partagée — voir la catégorie RAC.
Fichiers de la base de données
- Fichiers de données (datafiles) : contiennent les données, organisées en
tablespaces eux-mêmes découpés en segments (table, index, annulation/undo, temporaire).
- Fichiers de contrôle (control files) : nom de la base, horodatage, emplacement des
fichiers de données, numéro de séquence des journaux, informations de checkpoint. Il est fortement recommandé de les multiplexer (plusieurs copies sur des disques différents) pour ne jamais perdre la base suite à la corruption d'un seul disque.
- Fichiers de journalisation (redo logs) : organisés en groupes remplis
cycliquement ; voir Redo log pour le dimensionnement et la gestion des groupes/membres, et Sauvegarde oracle pour l'archivage (mode ARCHIVELOG).
Mémoire et processus de l'instance
- SGA (System Global Area) : mémoire partagée par tous les processus de l'instance
(cache de données, cache de curseurs partagés, buffer de journalisation...).
- PGA (Program Global Area) : mémoire privée de chaque processus serveur (tri, hachage,
variables de session).
- Processus d'arrière-plan (PMON, SMON, DBWn, LGWR, CKPT...) : assurent le fonctionnement
interne de l'instance (nettoyage des sessions, écriture des données/journaux, reprise après crash...).
- Processus serveur : traitent les requêtes envoyées par les sessions clientes, connectées
via Oracle net et son écouteur (Lsnrctl).
Profils de charge
Le dimensionnement et le paramétrage d'une base dépendent fortement de son usage :
- OLTP (Online Transaction Processing) : beaucoup de petites transactions
(INSERT/UPDATE), optimisé pour la latence.
- DSS/DWH (Decision Support System / data warehouse) : requêtes de lecture volumineuses
(SELECT), optimisé pour le débit.
- Mixte : configuration à ajuster manuellement selon la réalité des deux charges.
Écosystème et sous-domaines
contrôle et de journalisation, tablespaces, comptes et privilèges, réseau (listener, tnsnames), patchs (OPatch).
- ASM (Automatic Storage Management) — gestionnaire de volumes/stockage dédié
aux bases Oracle, alternative moderne aux partitions RAW et à OCFS.
- RAC et Grid Infrastructure — Real Application Clusters : plusieurs
instances actives sur plusieurs nœuds pour la haute disponibilité et la montée en charge horizontale (CRS, OCR, VIP, services cluster).
- Sauvegarde — Rman (RMAN, sauvegarde/restauration physique) et Datapump
(export/import logique) ; voir aussi Sauvegarde oracle pour les concepts généraux.
- Exadata — appliance matérielle Oracle haute performance
(cellules de stockage, Cellcli, souvent virtualisée avec OVM).
- SQL*Plus / PL-SQL — client en ligne de commande et langage procédural natif d'Oracle
pour écrire des scripts et des procédures stockées.
Voir aussi
- Instance — architecture détaillée d'une instance Oracle
- Oracle net — couche réseau (SQL*Net), listener et tnsnames.ora
- Asm — gestion de stockage ASM
- Rman — sauvegarde et restauration
- OPatch — application des patchs
- Oracle xe — édition gratuite pour test/développement
- Instantclient — bibliothèques clientes légères