Oracle Database est un système de gestion de base de données relationnelle (SGBDR) qui depuis l'introduction du support du modèle objet dans sa version 8 peut être aussi qualifié de système de gestion de base de données relationnel-objet (SGBDRO). Fourni par Oracle Corporation, il a été développé par Larry Ellison, accompagné entre autres, de Bob Miner et Ed Oates.

Historique Software Development Laboratories a été créé en . En , l'entreprise change de nom en devenant Relational Software, Inc. (RSI) et commercialise son produit Oracle V2 comme base de données relationnelle. La ne supportait pas les transactions mais gérait les fonctionnalités SQL basiques de requête et jointure. Il n'y a jamais eu de , pour des raisons de marketing, et la a été la première version proposée. Celle-ci fonctionnait uniquement sur les systèmes Digital VAX/VMS.

En , RSI devient Oracle Corporation pour être plus représentative de son produit phare. La d'Oracle, entièrement ré-écrite en langage de programmation C, est publiée. Celle-ci supportait les transactions grâce aux fonctionnalités de commit et rollback. C'est aussi à partir de cette version que la plate-forme Unix est supportée.

En , la supporte la cohérence en lecture ().

En , la supporte les requêtes distribuées, dans le cadre de l'intégration du modèle client-serveur avec l'arrivée des réseaux au milieu des .

En , la supporte le PL/SQL, le verrouillage de lignes (row-level locking) et les sauvegardes à chaud (hot backups, lorsque la base de données est ouverte). Oracle met sur le marché son ERP Oracle Financials basé sur la base de données relationnelle Oracle Database.

En , la supporte les contraintes d'intégrité, les procédures stockées et les déclencheurs (triggers).

En , acquisition d'un puissant moteur multidimensionnel, commercialisé sous le nom d'Oracle Express.

En , la introduit le développement orienté objet, et les applications multimédia grâce aux services Oracle interMedia., renommé depuis la .

En , la d'Oracle est publiée dans le but d'affiner ses applications avec Internet (le i fait référence à Internet). La base de données comporte nativement une machine virtuelle Java.

En , la ajoute fonctionnalités et permet de lire et d'écrire des documents XML. Elle intègre le moteur OLAP : le moteur Oracle Express est dorénavant référencé au sein de l'option Oracle OLAP. Les données multidimensionnelles sont accessibles à partir du langage SQL.

En , la supporte les expressions rationnelles. Le g signifie grid ; un des atouts marketing de la 10g est en effet qu'elle supporte le grid computing.

En , la Express Edition, complètement gratuite, est publiée, ainsi que la Release 2.

En , la Linux et Windows.

En , la Release 2 est publiée..

En , la est publiée.

En , la release 2 (12.2.0.1) est publiée.

En , la est publiée, il s'agit de la mais avec la nouvelle convention de version.

En , la est publiée.

En , paraît la .

Conventions sur les numéros de version Les numéros de version d'Oracle ont introduit une certaine confusion chez de nombreuses personnes.

La nomenclature de version a changé au cours du temps, mais se base en général sur la convention suivante : version X.Y.Z.a où X.Y désigne la version majeure du produit : 8.1 pour 8i, 9.2 pour 9i Release 2 Ceci n'est plus vrai en 10, où l'on a une version majeure (10g), déclinée en deux « ». Au sein d'une même version majeure (8i, 9i ou 10g), les fonctionnalités générales du RDBMS sont censées être les mêmes.

Le chiffre Z désigne quant à lui le niveau de correctif générique appliqué. Oracle délivre en général 3 ou 4 mises à jour (« ») pour une version majeure, mais cela reste très variable.

Enfin, le chiffre a désigne un niveau de correctif spécifique à un système d'exploitation, ou une plateforme.

Depuis la version 7, les versions majeures du SGBD Oracle ont été les suivantes :

Oracle 7 : 7.1, 7.2, 7.3 Oracle 8 : 8.0.3, 8.0.4, 8.0.5, 8.0.6 Oracle 8i : 8.1.5 (Release 1), 8.1.6 (Release 2), 8.1.7 (Release 3) Oracle 9i : 9.0.1 (Release 1), 9.2.0 (Release 2) Oracle 10g : 10.1 (Release 1), 10.2 (Release 2) Oracle 11g : 11.1 (Release 1), 11.2 (Release 2) Oracle 12c : 12.1 (Release 1), 12.2 (Release 2) À partir de 2018, un rythme annuel de nouvelles versions est prévu : le numéro de version rappellera l'année, la prochaine version sera donc la 18 (au lieu de la 12.2.0.2 initialement prévue), la suivante la 19...

Éditions et licences L'ensemble des environnements (développement, test, intégration, homologation, production…) utilisant le moteur de bases de données Oracle doit être sous licence. On distingue deux modes de licences : Utilisateurs nommés : concrètement, nombre de personnes uniques se connectant aux bases de données. Ceci convient à des applications de gestion typique en mode client/serveur et aux environnements hors-production où le nombre d'utilisateurs est connu. On note qu'Oracle applique un nombre minimal d'utilisateurs par "licence processeur" (généralement 25). Licence Processeur : en fonction de la puissance du serveur hébergeant les instances, un certain nombre de licences doit être acquis. Il faut prendre en compte deux notions : premièrement, la puissance est définie par un nombre de processeurs (CPU), et un nombre de cœurs par CPU. Deuxièmement un "core factor" s'applique en fonction de la puissance que délivre le constructeur des processeurs. Exemple : La majorité des processeurs Intel possède un facteur de 0,5 (cf : puces « multi-core » (Intel, AMD, SPARC, Power). Avec ces éléments on fait le calcul suivant : (nombre de CPU x nombre de cœurs par CPU x core factor). Et on obtient le nombre de "licences processeur" qu'il faut acquérir. Cette option est directement dédiée aux architectures trois tiers, où les applications positionnées au-dessus des bases de données, vont générer des requêtes par un nombre inconnu d'utilisateurs. C'est typiquement le cas lorsqu'une application est ouverte sur le Web et lorsque des milliers de personnes peuvent potentiellement accéder à la base (sites web).

En version 10g, Oracle valorise le prix d'une licence selon 3 types : édition Entreprise : comprend toutes les fonctionnalités du produit, édition Standard : limitations apportées aux fonctionnalités et sur le nombre de processeurs (4 maximum), édition Standard One : limitations apportées aux fonctionnalités et sur le nombre de processeurs (2 maximum).

On notera qu'en plus de ces licences, Oracle facture en sus certaines options selon les règles définies plus haut. Ainsi, les fonctionnalités suivantes doivent être spécifiquement achetées(en) Database Options&Packs : Dans la documentation Oracle.: Partitionning Oracle OLAP Oracle Advanced Security (ASO) Oracle Data Masking Data Mining Real Application Cluster (uniquement en Enterprise Edition)

À propos de la virtualisation Si un serveur Oracle est installé dans un environnement virtualisé (hors OracleVM) utilisant plusieurs serveurs physiques, c'est le nombre de processeurs de l'ensemble des machines physiques constituant le cluster qu'il faut licencier, car Oracle considère que le SGBD peut utiliser tour à tour l'ensemble des processeurs de l'infrastructure. La plupart des personnes, dans les entreprises moyennes ou grosses, ont une ferme de serveurs VMWare ou Hyper-V. Si des produits Oracle soumis à licence sont utilisés, il faut impérativement analyser les besoins et les coûts de licence. Par exemple, une ferme de 4 serveurs composés chacun de 4 processeurs Intel (CPU), tous composés de 2 cœurs sera « licenciée » pour 4*4*2*0,5 = 16 licences CPU — ce qui peut devenir prohibitif. C'est la raison pour laquelle, la technologie OracleVM reste conseillée, d'autant plus qu'elle offre des fonctionnalités égales.

Certaines technologies de virtualisation (IBM, SUN et même Microsoft depuis peu(en) Note sur le support Hyper-V : Metalink Doc ID 1563794.1 (contrat de support nécessaire pour y accéder).) sont bien supportées par Oracle, mais il semble qu'il y ait un (gros) désaccord entre Oracle et VMWare(en) Support de VMWare : Metalink Doc ID 249212.1.(en) Position officielle de VMware : voir §2.. En effet les règles d'Oracle sur le licensing n'ont jamais changé, contrairement aux fonctionnalités de VMware.

Sur les technologies de virtualisation supportées par Oracle, l'utilisation de VM permet d'optimiser le coût des licences par une meilleure utilisation de la charge CPU.

Logiciels Oracle gratuits Oracle propose depuis fin 2005 une version totalement gratuite de la base, « Oracle Database Express Edition »https://www.oracle.com/technetwork/database/database-technologies/express-edition/downloads/index.html Oracle Database XE Downloads] Logiciel libre de développement, de déploiement et de distribution.. Il s'agissait d'une version 10g Standard Edition One, fortement limitée : en 2011, elle limite la taille totale de la base à 4 Go (hors système, temporaire, segments d'annulation et autres fichiers), la SGA ne peut dépasser 1 Go et un seul processeur sera utilisé sur les machines qui en disposent de plusieurs. La version 11gR2 d'Oracle Express Edition présente les mêmes limitations, à part la taille des données utilisateur qui est portée à 11 Go.

En , la version XE d'Oracle 12c est rendue disponible. Les limites ont été étendues à 2 processeurs, 2 Gb de mémoire vive et 12 Gb de données(en)Oracle Database 18c XE now available!.. Sortie d'abord en version Linux (x64) uniquement, cette version est également disponible pour Windows (x64) depuis (en) Oracle 18c Express Edition (XE) for Windows is available..

Oracle SQL Developer est lui aussi gratuit. Cet outil développé en Java permet, via une interface graphique, de gérer les objets de la base, visualiser les sessions et de faire du SQL. Oracle SQL Data Modeler est un autre outil gratuit qui permet de concevoir des modèles de bases de données, des plus simples aux plus complexes. Il est possible d'exporter ensuite ces structures directement sur Oracle SQL Developer.

Téléchargement des produits L'intégralité des produits Oracle, à savoir : la base de données (RDBMS) ; le serveur d'application (IAS) ; la suite collaborative (OCS) ; l'environnement de développement (ODS) ; la suite applicative (eBusiness suite).

ainsi que les documentations associées(en) LA référence de la documentation Oracle., sont téléchargeables en version intégrale, sans limitation de durée, sur le site Oracle Technology Network Oracle Technology Network – téléchargement des produits, documentations…

Fonctionnalités Principales SQL PL/SQL, langages de programmation, utilisé pour créer des procédures, des fonctions et des déclencheurs. Java, ce langage de programmation est aussi utilisable pour créer des triggers lors de l'insertion, la modification ou l'effacement d'éléments Montage de la base de données sur plusieurs serveurs (grid en 10g, rac en 9i) Spatial, pour permettre la gestion de données géographiques Partitionnement physiques des données en sous-ensembles pour optimiser les temps d'accès Moteur OLAP intégré, stockant les cubes sous forme de BLOB (Binary Large Objects) Gestion de très grands volumes de données, taille maxi de de 128 To chacun en utilisant les BigFiles de la version 10gR2 ou 10.2 Réplication des données selon différents modes synchrones ou asynchrones de tout ou partie d'une base de données : voir ou encore la solution Golden Gate (le couteau suisse d'Oracle tant il permet de faire de choses différentes à la fois).

Fonctionnalités annexes Partitionnement Module Oracle Text DBLink

Plates-formes prises en charge En , les plates-formes prises en charge pour Oracle 10g Release 1 étaient : HP-UX PA-RISC HP-UX Itanium HP Tru64 Linux x86 Linux Itanium

Mac OS X Windows (32-bit) Windows (64-bit Itanium) Sun Solaris x86 Sun Solaris (SPARC) (64-bit)

En , les plates-formes suivantes sont prises en charge pour Oracle 10g Release 2 : HPUX Itanium HPUX PA-RISC Linux Itanium Linux Power5