Oracle est un système de gestion de base de données relationnel (SGBDR) fourni par Oracle Corporation.
Oracle Express Edition 11g R2 est la version allégée gratuite d'Oracle. C'est vraiment facile de l'installer. Vous n'avez pas besoin de créer les utilisateurs d'Oracle, ou de modifier le fichier sysctr.conf. C'est déjà fait dans le paquet. Avec Oracle XE vous n'aurez droit qu'à une base de données (instance) et son SID (Oracle System ID) vaudra par défaut « XE ».
Comme d'habitude, Oracle a besoin de beaucoup de ressources, avec un minimum pour le serveur de 512 Mio de mémoire vive et de 1024 Mio de Swap ainsi que de 1,5 Gio d'espace disque libre. Ces pré-requis sont vérifiés lors de l'installation du paquet.
Pour les architectures 32 bits vous pouvez télécharger le deb ici (uniquement la version 10). (sources)
Si vous avez une architecture 64 bits, la version 11 est disponible ici il faut la convertir en deb avec alien avant de l'installer. (sources).
Ajouter le dépôt de paquet suivant (ligne à ajouter dans le fichier /etc/apt/sources.list) :
deb http://oss.oracle.com/debian unstable main non-free
Si vous avez un problème de clé lors de "apt-get update", il faut télécharger et importer la clé du dépôt Oracle :
wget http://oss.oracle.com/el4/RPM-GPG-KEY-oracle -O- | sudo apt-key add -
Mettez à jour la liste des paquets des dépôts et installez les trois paquets suivants :
Mise à jour des sources d'installation :
sudo apt-get update
Installation des paquets précédemment présentés :
sudo apt-get install oracle-xe OU sudo apt-get install oracle-xe-universal ET sudo apt-get install oracle-xe-client
Si lors de l'installation du paquet, un message du style :
This system does not meet the minimum requirements for swap space
Et qu'il vous est impossible de re-partitionner le swap, il est possible de créer un fichier de swap comme suit :
sudo dd if=/dev/zero of=/swapfile bs=1M count=100
Où « count » est le nombre de Mio à rajouter à votre swap existant pour arriver au 1006 Mio requis par Oracle XE.
Puis mise au format swap :
sudo mkswap /swapfile
Enfin activation :
sudo swapon /swapfile
Source : Oracle.com
Si lors de l'installation du paquet, un message du style :
You have insufficient diskspace in the destination directory (/usr/lib) to install
Oracle Database 10g Express Edition. The install requires at lease 1.5 GB free on this disk
créer un lien symbolique dans le dossier d'installation /usr/lib dans un endroit ou il y'a de l'espace ex: /home/dossier_personnel
sudo ln -s /home/dossier_personnel/oracle oracle
Pour la configuration, lancer ce script :
/etc/init.d/oracle-xe configure
Il vous demandera les mots de passes SYS et SYSTEM, les ports TCP de Oracle listener et de l'application serveur d'Oracle. Dans la plupart des cas, vous devez laisser libre les ports standards.
Maintenant pour créer users / schema / … Vous avez une jolie interface http pour cela :
http://localhost:8080/apex/
Si vous installez la base de données Oracle sur une machine sans un serveur X, vous devez utiliser un port d'envoi SSH:
ssh -L 8080:localhost:8080 utilisateur@ADRESSE_IP_DE_VOTRE_SERVEUR
Toutes les modifications faites, il faut démarrer Oracle
/etc/init.d/oracle-xe start
Les variables d'environnement ne sont pas définies par le package. Si vous désirez utiliser les commande imp et exp ou éviter de taper le chemin complet de la commande sqlplus il faudra déclarer:
export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server export ORACLE_SID=XE
Vous pouvez renseigner les variables d'environnement ORACLE_HOME et ORACLE_SID dans le fichier ~/.bashrc de telle façon à pouvoir les valoriser à chaque fois que vous ouvrirez votre terminal. Placez le code suivant à la fin du fichier ~/.bashrc :
export PATH=$PATH:/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server export ORACLE_HOME export ORACLE_SID=XE
ERROR:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux Error: 2: No such file or directory
Exemple :
ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server (CORRECT) ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/ (INCORRECT)
Il est intéressant d'ajouter les variables d'environnement "local". Pour ce faire, ouvrez le fichier suivant :
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh
Nous allons modifier ou ajouter de la manière suivante :
ORACLE_SID=XE; export ORACLE_SID ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server; export ORACLE_HOME PATH=$ORACLE_HOME/bin:$PATH; export PATH NLS_LANG=AMERICAN_AMERICA.AL32UTF8; export NLS_LANG LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH