Introduction

Ce n'est pas une vraie nouveauté, mais j'ai pu constater qu'elle était méconnue, il existe une version gratuite de Oracle : Oracle XE. Il s'agit d'une véritable 10g avec certaines limitations :

  • Un seul processeur ( les dual-cores comptent pour 1 )
  • 1 instance par serveur nommée XE
  • 1Go de RAM maxi.
  • 4Go de données utiles

Il ne s'agit pas d'une version dégradée, mais une vraie 10g avec juste les limites ci-dessus. XE est idéale pour du développement, une petite base ou encore un référentiel RMAN.

Son installation est simple, il existe un rpm pour Redhat et un .deb pour Debian. Ce billet montre l'installation sur un serveur Debian Squeeze.

Source des packages

Le plus simple est d'éditer le fichier /etc/apt/sources.list et d'y ajouter le dépot oss.oracle.com

deb http://oss.oracle.com/debian/ unstable main non-free

Il faut également charger la clé GPG qui signe les packages, sinon il y aura une erreur de ce type :

W: Erreur de GPG : http://oss.oracle.com unstable Release : Les signatures suivantes n'ont pas pu être vérifiées car la clé publique n'est pas disponible : NO_PUBKEY 2E2BCDBCB38A8516

Utiliser la commande wget pour récupérer la clé GPG et l'installer avec apt-key.

wget http://oss.oracle.com/el4/RPM-GPG-KEY-oracle
apt-key add RPM-GPG-KEY-oracle

Recharger et lancer lancer l'installation

aptitude update
aptitude install oracle-xe-universal

La version actuelle est basée sur une 10.2.0.1. Une fois les package installés, lancer la configuration ainsi

/etc/init.d/oracle-xe configure

L'installaeur va demander le port http pour l'interface web d'administration, valeur par défaut 8080, accepter.

Puis ensuite le port d'écoute de listener, classique le 1521, là encore accepter.

Dernière question le mot de passe pour l'utilisateur SYS et SYSTEM, dans l'exemple nous allons mettre manager10.

Une fois la configuration terminée; il suffit de paramétrer certaines variables d'environnement :

export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

Un user oracle a été créé, il suffit de mettre les valeurs ci-dessus dans son .bash_profile.

La connexion est classique :

sqlplus system/manager10@XE

Interface Web d'administration

Par défaut il est possible d'administrer Oracle XE en pointant le navigateur sur : http://localhost:8080/apex

Il est très simple de permettre la connexion web distante. Se connecter en system sur la base XE et lancer le script PL/SQL ci-dessous.

sqlplus system/manager10@XE
SQL> exec dbms_xdb.setlistenerlocalaccess(false);
SQL> exit;

Pointer ensuite le navigateur sur l'adresse du serveur disant, toujours sur le port 8080 et sur la page apex. ( Exemple : http://chopin.silverlake.fr:8080/apex )

connexion_xe.png

L'interface web est en français et suffisamment conviviale pour une prise en main rapide. admin_xe.png

Une version XE basée sur 11.2 est disponible sur le site Oracle en version Béta. A ce jour seul les rpm sont disponibles.

Il existe une communauté active sur XE ( http://www.oracle.com/technetwork/database/express-edition/overview/index.html ); Mais attention XE n'est pas Open Source.