RPM Oracle Instant Client
+
Par Remi le vendredi 12 novembre 2010, 18:49 - HowTo - Lien permanent
Un petit guide pour construire les RPM de Oracle Instant Client.
L'installation de Oracle Instant Client est certainement la solution la plus simple de disposer d'un accès aux bases Oracle depuis un client Unix/Linux/Windows/MacOS. Oracle fourni directement quelques RPM (utilisables sous Fedora) pour certaines versions et uniquement pour certaines architectures. Pour les autres versions, seules les archives aux formats ZIP sont disponibles sur le site.
Personnellement les RPM officiels ne me conviennent pas pour plusieurs raisons :
- Installation dans /usr/lib au lieu de /usr/lib64
- Aucun provides (indispensable pour résoudre les dépendances entre paquets)
- Pas de configuration du chargement dynamique des bibliothèques
Ces différentes raisons m'ont amené, depuis plusieurs années, à fabriquer mes propres paquets que j'utilise, notamment pour construire et faire tourner tora ou php-oci8. Bien sur l'idéal serait que je puisse mettre les RPM sur mon dépôt, cependant, la licence d'utilisation ne me le permet sans doute pas.
J'actualise donc ce petit guide à l'occasion de la mise à jour en version 11.2.0.2.0 qui sera utilisée pour les prochaines versions.
Préparation de l'environnement
Il sera nécessaire de disposer d'environ 300Mio d'espace libre.
Sous root, installation des composants nécessaires
yum install rpmdevtools rpm-build unzip
Création d'un compte dédié, on ne construit jamais sous root, et un compte dédié est toujours une bonne idée.
useradd orabuild
Sous le compte orabuild, préparation des dossiers nécessaires
rpmdev-setuptree
Récupération des dernières versions
Télécharger depuis le site Oracle la dernière versions des archives et les enregistrer dans le dossier ~/rpmbuild/SOURCES
Version 32 bits :
- instantclient-basic-linux32-11.2.0.2.0.zip
- instantclient-jdbc-linux32-11.2.0.2.0.zip
- instantclient-odbc-linux32-11.2.0.2.0.zip
- instantclient-sdk-linux32-11.2.0.2.0.zip
- instantclient-sqlplus-linux32-11.2.0.2.0.zip
- instantclient-tools-linux32-11.2.0.2.0.zip
Version 64 bits :
- instantclient-basic-linux-x86-64-11.2.0.2.0.zip
- instantclient-jdbc-linux-x86-64-11.2.0.2.0.zip
- instantclient-odbc-linux-x86-64-11.2.0.2.0.zip
- instantclient-sdk-linux-x86-64-11.2.0.2.0.zip
- instantclient-sqlplus-linux-x86-64-11.2.0.2.0.zip
- instantclient-tools-linux-x86-64-11.2.0.2.0.zip
Télécharger depuis mon site la dernière version du source du RPM, dans le dossier ~/rpmbuild/SRPMS
Pour i386 : oracle-instantclient-i386-11.2.0.2.0-1.remi.nosrc.rpm
Pour x86_64 : oracle-instantclient-x86_64-11.2.0.2.0-1.remi.nosrc.rpm
Construction des RPM
Toujours sous le compte orabuild
rpmbuild --rebuild rpmbuild/SRPMS/oracle-instantclient-*-11.2.0.2.0-1.remi.nosrc.rpm
Après quelques minutes... vous avez les RPM disponibles dans le dossier ~/rpmbuild/RPMS/i386 ou ~/rpmbuild/RPMS/x86_64
Ecrit: /home/orabuild/rpmbuild/RPMS/x86_64/oracle-instantclient-basic-11.2.0.2.0-1.fc14.x86_64.rpm Ecrit: /home/orabuild/rpmbuild/RPMS/x86_64/oracle-instantclient-devel-11.2.0.2.0-1.fc14.x86_64.rpm Ecrit: /home/orabuild/rpmbuild/RPMS/x86_64/oracle-instantclient-jdbc-11.2.0.2.0-1.fc14.x86_64.rpm Ecrit: /home/orabuild/rpmbuild/RPMS/x86_64/oracle-instantclient-odbc-11.2.0.2.0-1.fc14.x86_64.rpm Ecrit: /home/orabuild/rpmbuild/RPMS/x86_64/oracle-instantclient-sqlplus-11.2.0.2.0-1.fc14.x86_64.rpm Ecrit: /home/orabuild/rpmbuild/RPMS/x86_64/oracle-instantclient-tools-11.2.0.2.0-1.fc14.x86_64.rpm
Installation / Utilisation
Vous pouvez maintenant installer ces RPM comme habituellement, sous root :
yum install --nogpgcheck /home/orabuild/rpmbuild/RPMS/*/oracle-instantclient-*-11.2.0.2.0-1.*.rpm
Vous pouvez tester l'accès à votre serveur avec la commande habituelle :
sqlplus user/login@serveur:port/SID
Pour continuer, voir, par exemple Accès aux bases de données Oracle en PHP
Comme toujours n'hésitez pas à me faire part de vos remarques.
Commentaires
Mise à jour pour la version 11.2.0.3.0
Mise à jour pour la version 12.1.0.1.0
Le client version 11.1 supporte les connexions vers les serveurs en version 12.1, 11.2, 11.1, 10.2.0.2 et 9.2.0.4
Le client version 12.1 supporte les connexions vers les serveurs en version 12.1, 11.2, 11.1, et 10.2.0.2.
Mise à jour pour la version 12.1.0.2.0 (très en retard)
Mise à jour pour la version 12.2.0.1.0
Mise à jour pour la version 18.3.0.0.0
Notice: la version 18c du client permet de se connecter aux mêmes versions du serveur que la version précédente, à savoir: 18c, 12.2, 12.1 et 11.2.
Mise à jour pour la version 19.3.0.0.0
Oracle Call Interface 19.3 peut connecter avec Oracle Database 11.2 ou supérieur.
Mise à jour pour la version 18.5.0.0.0 (x86_64 uniquement)
Mise à jour pour la version 19.5.0.0.0
Oracle Call Interface 19.5 peut connecter avec Oracle Database 11.2 ou supérieur.
Mise à jour pour la version 19.6.0.0.0
Mise à jour pour la version 19.8.0.0.0
Mise à jour pour la version 21.1.0.0.0
La version 21.1 permet la connexion aux serveurs en version 12.1 et supérieure (11.2 fonctionne mais n'est pas officiellement supportée)
Mise à jour pour la version 21.3.0.0.0
Mise à jour pour la version 21.4.0.0.0
Mise à jour pour la version 21.5.0.0.0