Horoa – La voie est libreLa voie est libre

TOra: toolkit oracle sous Debian

A ma connaissance, TOra est le seul utilitaire libre de gestion SGBD qui supporte les bases de données Oracle. Encore faut il disposer du support Oracle sur sa distribution.
Cet article explique comment compiler TOra sous forme de paquet Debian avec le support Oracle.
Tora est un outil graphique de management des bases de donnée. Il supporte les SGBD les plus utilisés, notamment MySQL, PostgreSQL, et dans une certaine mesure, les SGBD compatibles ODBC. Il est aussi multiplateforme, bref un outil qui vous donne une grande liberté, tout à fait dans la philosophie d’horoa.
Niveau fonctionnalités on retrouve des choses très classiques, comme la navigation de données et une interface de requêtes SQL ; mais aussi des outils beaucoup plus avancés qui feront le bonheur du DBA et des développeurs: gestionnaires de sessions, debugger PL/SQL, outils de reporting…
Si la plupart des distributions Linux propose TOra sous forme de packages, cette version est souvent privée du supoort Oracle pour des questions de licences. En effet, Oracle distribue gratuitement les librairies clientes de son SGDB (ainsi que sqlplus), mais la licence proposée entre ne parfaite contradiction avec la GPL et d’autres licences libres. C’est notamment le cas sous Debian GNU/Linux.
Nous allons donc voir ici comment recompiler un paquet Deb TOra pour avoir le support Oracle.
Installation des librairies Oracles et de leurs entêtes:
Rendez vous donc sur le site d’Oracle, section download, et choisissez la version de l’instantclient correspondant à votre version de GNU/Linux ainsi que son SDK: http://www.oracle.com/technetwork/database/features/instant-client/
Pour ce tuto, nous utilisons une Debian 6.0 amd64. Les archives récupérées sont donc:

instantclient-basic-linux-x86-64-11.2.0.2.0.zip
instantclient-sdk-linux-x86-64-11.2.0.2.0.zip

On va décompresser les archives dans un répertoire dédié à l’installation d’Oracle:

sudo mkdir /opt/oracle
sudo unzip -d /opt/oracle/ instantclient-basic-linux-x86-64-11.2.0.2.0.zip
sudo unzip -d /opt/oracle/ instantclient-sdk-linux-x86-64-11.2.0.2.0.zip
cd /opt/oracle/instantclient_11_2/
sudo ln -s libclntsh.so.11.1 libclntsh.so

On ajoute les librairies installées à la liste des librairies du système en ajoutant le fichier suivant /etc/ld.so.conf.d/oracle.conf, contenant la ligne ci-dessous:

/opt/oracle/instantclient_11_2

Puis on recharge les librairies.

sudo ldconfig

Compilation de TOra:

Nous allons utiliser les dernières sources afin d’être à jour. Elles sont disponibles via SVN. Assurez donc d’avoir subversion d’installé. Si ce n’est pas le cas:
sudo apt-get install subversion
svn co https://tora.svn.sourceforge.net/svnroot/tora/trunk tora

Une fois les sources récupérées, on compile le packages:

cd tora/tora
sudo apt-get build-dep tora
ORACLE_HOME=/opt/oracle/instantclient_11_2 DEB_DH_SHLIBDEPS_ARGS_ALL='-- --ignore-missing-info' dpkg-buildpackage -b -uc
sudo dpkg -i ../tora_*.deb

You’re done!

Tags: , , , , ,

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *