Installation d'Oracle Database XE sur Debian, Ubuntu et Kubuntu

Par Todd Trichler

Que se passe-t-il lorsque vous essayez d'installer Oracle Database XE Beta sur une nouvelle distribution Linux ? Vous apprenez beaucoup !

Mis à jour août 2007 - LinuxWorld Mexique Installfest

Dans mon travail quotidien, je travaille avec des distributions Linux basées sur .rpm notamment sous la forme de RHEL, SLES et Asianux. Récemment, j'ai remarqué que la documentation d'Oracle Database XE mentionnait la prise en charge de Debian. Jusqu'à présent, je n'avais jamais installé Oracle sur une distribution basée sur Debian ; je n'avais vécu cette expérience que par procuration.

S'ensuivit une analyse solitaire des étapes techniques d'installation de la version bêta d'Oracle Database XE sur Kubuntu 5.10 Breezy, une distribution Linux basée sur le format de package .deb et KDE. Les leçons apprises et les suggestions s'appliquent également à Debian, Ubuntu et à d'autres distributions .deb.

Si vous êtes intéressé par les coulisses de ce parcours et les différents développeurs PHP et des personnes qui vous ont apporté leur aide tout au long du parcours, veuillez lire l'encart.

Mise à jour (mars 2006) : avec Oracle Database XE en production, il est encore plus facile d'installer Oracle sur des distributions Debian (merci à Joel Becker).

Un dépôt apt-get est désormais disponible sur oss.oracle.com pour XE. Ajouter simplement :

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

à /etc/apt/sources.list, puis :

# wget http://oss.oracle.com/el4/RPM-GPG-KEY-oracle -O- | sudo apt-key add - # apt-get update # apt-get install oracle-xe 'libaio' et 'bc' sont dans le référentiel, de sorte que les dépendances les extraient si l'utilisateur ne les dispose pas. (Remarque : vous devez disposer des privilèges « sudo » ou « root » pour installer XE.)

Avis de non-responsabilité : ces étapes ont fonctionné sur ma configuration ; elles pourraient ne pas fonctionner sur le vôtre.

Téléchargez une image iso de Kubuntu Breezy et gravez un disque d'installation.

Effectuez une installation standard de Kubuntu. Lorsque vous y êtes invité, choisissez « Effacer la totalité de l'unité de disque dur et utiliser LVM ».

Ne définissez aucun paramètre de noyau car les dernières versions bêta de XE sont censées vérifier les paramètres et les augmenter si nécessaire. (Remarque : si vous utilisez une version bêta antérieure, vous voudrez vérifier celles-ci ; mieux encore, téléchargez la dernière version.)

Vérifiez que les bibliothèques requises (glibc et équivalent libaio) sont installées. Sur Kubuntu et Ubuntu, ils sont appelés « libc6 » et « libaio1 ». (J'ai utilisé Adept, le nouvel outil de gestion de packages de l'interface graphique, pour installer libaio1 ; libc6 était déjà installé.) Comme Wim Coekaerts l'explique dans son podcast sur le sujet, vous devez actuellement utiliser Debian instable pour obtenir les paquets équivalents, mais à l'avenir avec Debian sid, ils seraient simplement inclus.

En tant que _root_, j'ai lancé l'installation de la dernière version bêta d'Oracle XE disponible :

todd@kubuntu:~$ su - root@kubuntu:~# cd /home/todd/Desktop root@kubuntu:/home/todd/Desktop# ls DapperDevStatus02-Feb-2006.pdf oracle-xe_10.2.0.1-0.060128_i386.deb trash.desktop root@kubuntu:/home/todd/Desktop# dpkg -i oracle-xe_10.2.0.1-0.060128_i386.deb Sélection du package oracle-xe précédemment désélectionné. (Reading database ... 58594 files and directories currently installed.) Unpacking oracle-xe (from oracle-xe_10.2.0.1-0.060128_i386.deb) ... This system does not meet the minimum requirements for swap space. Based on the amount of physical memory available on the system, Oracle Database 10g Express Edition requires 1006 MB of swap space. This system has 799 MB of swap space. Configure more swap space on the system and retry the installation. dpkg: error processing oracle-xe_10.2.0.1-0.060128_i386.deb (--install): subprocess pre-installation script returned error exit status 1 Errors were encountered while processing: oracle-xe_10.2.0.1-0.060128_i386.deb root@kubuntu:/home/todd/Desktop#

Remarque : je ne recommande pas d'utiliser ces types de commande pour ajouter un swap, sauf si vous comprenez ce qu'ils font ou si vous faites confiance à la personne qui vous a recommandé le correctif et qu'elle connaît votre système. Mieux encore, ajoutez suffisamment de swap pour commencer. D'après des sources bien informées, quand Kubuntu 6.04 Dapper passera en production (avril 2006 ?), ce ne sera peut-être plus un problème.

root@kubuntu:/home/todd/Desktop# dpkg -i oracle-xe_10.2.0.1-0.060128_i386.deb (Reading database ... 62016 files and directories currently installed.) Unpacking oracle-xe (from oracle-xe_10.2.0.1-0.060128_i386.deb) ... Setting up oracle-xe (10.2.0.1-0.060128) ... Oracle Database 10g Express Edition is not configured. You must run '/etc/init.d/oracle-xe configure' as the root user to configure the database. Executing Post-install steps... You must run '/etc/init.d/oracle-xe configure' as the root user to configure the database.

Bien qu'il soit installé à ce stade, vous devez le configurer :

root@kubuntu :/home/todd/Desktop# /etc/init.d/oracle-xe configure

Configuration d'Oracle Database 10g Express Edition

Oracle Database XE

Oracle Database XE

Les propriétés d'initialisation d'Oracle Database XE seront configurées. Les questions suivantes détermineront si la base de données doit démarrer à l'initialisation du système, les ports qu'elle utilisera et les mots de passe qui seront utilisés pour les comptes de base de données. Appuyez sur une touche pour accepter les valeurs par défaut. Pressez Ctrl-C pour abandonner.

Indiquez le port HTTP qui sera utilisé pour Oracle Application Express [8080] : indiquez un port qui sera utilisé pour le processus d'écoute de base de données [1521] : indiquez le mot de passe à utiliser pour les comptes de base de données. Notez que le même mot de passe sera utilisé pour SYS et SYSTEM. Oracle recommande d'utiliser différents mots de passe pour chaque compte de base de données. Cette opération peut être effectuée après la configuration initiale : confirmez le mot de passe : (* n'oubliez pas ce mot de passe *) Voulez-vous qu'Oracle Database 10g Express Edition soit démarré à l'initialisation (y/n) [y] : y Démarrage d'Oracle Net Listener... Configuration terminée : Database...Fait Démarrage de l'installation d'Oracle Database 10g Express Edition Instance...Fait Installation terminée avec succès. Pour accéder à la page d'accueil de la base de données, accédez à « http://127.0.0.1:8080/apex » root@kubuntu :/home/todd/Desktop#

A ce stade, vous pouvez lancer Firefox http://127.0.0.1:8080/apex, vous connecter avec le nom d'utilisateur « system » et le mot de passe que vous avez créé au cours de l'installation et vous devriez voir la page d'accueil XE :

FAQ sur les pièges et les solutions :

Q. L'installation est terminée. Où sont mes options de menu ?
R. Avec cette version bêta, vous trouverez les éléments de menu perdus de XE, dans le dossier nommé à juste titre Lost & Found. Mais avant de foncer tête baissée pour corriger la structure à l'aide de l'éditeur de menu de KDE, vous pouvez essayer de redémarrer votre machine. Pour moi, une redémarrage a rafraîchi la structure du menu, offrant un menu présentable.

Q. Anomalie d'élément de menu mineur après la réinitialisation : le menu actualisé comporte toujours un élément extra « Getting Started with XE ». Pourquoi ?
R. Je suppose qu'ils veulent vraiment que nous apprenions à utiliser XE !

Q. Comment se fait-il que mon utilisateur "todd" ne peut pas démarrer la base de données à l'aide de l'option de menu créée ?
Q. Comment se fait-il que mon utilisateur "todd" ne peut pas démarrer la base de données à l'aide de l'option de menu créée ?
R. L'utilisateur 'todd' n'est pas membre du groupe 'dba'. Vous pouvez ajouter l'utilisateur en accédant aux paramètres système en mode admin pour ajouter l'utilisateur 'todd' au groupe 'dba'.

Q. Pour une raison quelconque, le comportement par défaut dans Konqueror ne s'adapte pas bien aux options du menu XE.
. La solution la plus simple est d'utiliser Adept pour installer Firefox. Ils ont récemment travaillé avec Firefox et ce logiciel est désormais assez stable sur Kubuntu.

Q. Pourquoi ai-je un 'bc' lorsque j'installe sur la version du serveur Kubuntu ?
R. Les erreurs bc sont dues au fait que ce package n'est pas installé comme sur la version dektop. Effectuez une opération #apt-get install oracle-xe à partir de oss.oracle.com pour extraire le package 'bc' ou installez-le manuellement avant d'installer XE.

Q. Lorsque j'installe XE sur la version du serveur Kubuntu, les options du menu XE apparaissent parfois dans Lost&Found. Pourquoi ?
R. En effet, XE s'attend à ce que KDE soit déjà en place. Si vous installez la version du serveur Kubuntu, commencez par #apt-get install kubuntu-desktop firefox, puis installez uniquement XE (#apt-get install oracle-xe). Les options du menu graphique seront correctes.

Si vous avez des liens intéressants sur l'installation de XE sur d'autres distributions, veuillez les publier via l'e-mail de « commentaires ». Après avoir examiné les différences entre les systèmes basés sur dpkg et .rpm, ma curiosité m'a poussé à comparer les différences.

 

Naissance d'un paquet .deb

Lorsque XE est sorti en 2005, j'ai téléchargé la version .rpm et l'ai installée avec succès sur RHEL4 et SLES9. Vu qu'elle prendrait également en charge les distributions basées sur Debian, j'ai décidé de tenter de l'installer sur une d'entre elles. J'ai choisi Kubuntu comme système d'exploitation cible, principalement parce que cette distribution basée sur .deb utilise le bureau KDE, dont j'ai l'habitude. À mon avis, KDE est plus facile à prendre en main pour les novices et pour les personnes ayant déjà utilisé Windows. (Si vous préférez Gnome, vous pouvez essayer Ubuntu.) Le seul problème majeur que j'ai avec Kubuntu est que Firefox n'est pas installé par défaut.

En novembre, j'ai utilisé l'outil 'alien' pour créer un paquet .deb à partir de la version .rpm et j'ai pu installer une base de données rudimentaire avec beaucoup d'erreurs et de menus mangled. Quand j'ai demandé à Wim ce qu'il en était des menus, il m'a dit que Joel Becker de notre équipe de noyau Linux cherchait à créer un package .deb.

Les développeurs sont « territoriaux » ; ils aiment « marquer leur terrain » et ils défendent bec et ongles leurs technologies de prédilection. Paul Scott, Administrateur informatique d'une université sud-africaine, s'occupait de ses propres affaires, assis avec son ordinateur portable dans un hall de Francfort lors de la Conférence internationale PHP. Sur son ordinateur portable, il y avait un autocollant Debian et un autre autocollant que j'avais vu être remis avec des CD Ubuntu. Il s'avère que non seulement il connaît le système d'emballage de Debian, mais il a également construit des packages pour Ubuntu64 Linux. Chez Installfest, nous avons également rencontré l'Autrichien Clemens Fink, qui, lors d'un évènement précédent, avait installé Oracle Database 10g EE sur son propre noyau Debian personnalisé.

Paul et Clemens ont passé environ 4 heures à nettoyer les menus sur la version alpha initiale de OracleXE.deb, pendant que je m'émerveillais de leur capacité à naviguer entre les différences entre le système de menus .rpm sur lequel XE avait été construit à l'origine et le système dpkg. En 30 minutes environ, ils avaient une version de travail. Ils ont ensuite passé le reste du temps à « débianiser » et à s'assurer que tout fonctionnait correctement ou à la manière de Debian. Je suppose que, lorsqu'il s'agit d'une passion et que vous travaillez avec vos technologies de prédilection, le soucis du détail vient naturellement. Merci à vous !

Lorsque je suis revenu au quartier général, Joel a configuré un espace de travail que nous pourrions utiliser pour collaborer avec eux, avec Joel obtenant les nouveaux tar de ST. Après cette collaboration multiculturelle dans six villes, sur trois continents et plusieurs itérations plus tard, la version bêta de oracle-xe_10.2.0.1-0.060128_i386.deb est née.