Installare Toad per Oracle su GNU/Linux con Wine
Oggi vedremo come installare Toad for Oracle sulla propria distribuzione.
Toad è il noto tool che permette di amministrare e gestire vari DBMS (in primis Oracle).
Che cosa ci occorre
- Toad (ovviamente)
- Client Oracle
- Wine
Passo 1: Preparare Wine
Prima di installare Toad ci sono alcune cose da sistemare. Prima di tutto verifichiamo che Wine sia installato. Per quelli che non lo sanno Wine è un software che implementa le API di Windows permettendo l'esecuzione di programmi scritti per Windows anche su sistemi operativi di tipo UNIX, tra cui Linux.
Dopo esserci assicurati che Wine è installato adesso creiamo una nuova “bottle” o contenitore che conterrà il necessario per installare sia il client Oracle che TOAD.
Da terminale digitiamo:
$ export WINEPREFIX=~/.wine-toad
E' possibile installare Toad anche nel contenitore predefinito di Wine ovvero sotto ~/.wine
. L'utilizzo di una directory specifica come contenitore ci facilita la configurazione di parametri specifici per la corretta esecuzione del programma o la possibilità di poter fare un backup completo da spostare su un'altra macchina o eliminare tutto nel caso in cui non funzioni un programma oppure testare diverse versioni di un prodotto senza toccare gli altri contenitori.
In questo modo diciamo a Wine di utilizzare questa directory per salvare le configurazioni e installare i programmi.
Il prossimo passo è utilizzare winecfg
che creerà il contenitore con l'alberatura standard di Windows e un set di chiavi di registro, DLL ed eseguibili che serviranno per caricare correttamente un programma.
Passo 2: Installare l'Instant-Client Oracle
Invece di utilizzare il Client Oracle che pesa notevolmente (>200MiB), dal sito Oracle scarichiamo l'Instant-Client che è molto più leggero in quanto ha le librerie necessarie per collegarsi al DB Oracle. Per la versione di Toad che proveremo ad installare (ovvero la 9.x) scarichiamo la versione 10.1.x dell'Instant-client (instantclient-basic-win32-10.1.0.5-20060419.zip).
Nel contenitore di Wine che abbiamo creato, creiamo l'alberatura tipica di Oracle:
$ cd $WINEPREFIX/drive_c $ mkdir -p oracle/bin $ mkdir -p oracle/network/admin $ touch oracle/network/admin/tnsnames.ora
Prossimo passo è impostare la variabile d'ambiente ORACLE_HOME
in modo che Toad possa vedere il client Oracle correttamente.
Da console apriamo l'Editor di Registro:
$ $WINEPREFIX=~/.wine-toad regedit
e creiamo la chiave HKEY_LOCAL_MACHINE\Software\Oracle
e la stringa ORACLE_HOME
con valore c:\oracle
.
Sempre dall'Editor di Registro creiamo/modifichiamo sotto la chiave HKEY_CURRENT_USER/Environment
la stringa PATH
con il valore c:\oracle\bin
.
Nel caso in cui la variabile PATH
contenga già dei valori utilizzare il punto-virgola come separatore. Es:
PATH=c:\windows\system32;c:\oracle\bin
La stessa procedura per l'installazione dell'instant client può essere utilizzata anche dagli utenti Windows sulle proprie macchine
Passo 3: Installiamo Toad
Toad 9.x
L'installazione di Toad 9.x non è particolarmente difficoltosa. Per fortuna funziona out-of-the-box senza l'ausilio di pacchetti o librerie extra. Per farlo, da terminale lanciare l'installer e seguire l'istruzioni a video.
$ $WINEPREFIX=~/wine-toad/ wine toad9.exe
Al termine dell'installazione vedremo nel menu del nostro DE (desktop environment) le voci per lanciare Toad.
L'unica pecca è che ogni volta che lanceremo Toad per usarlo, ci verrà riproposto il wizard di configurazione.
Alternative Linux a Toad... tora
Se proprio non abbiamo voglia di utilizzare Toad per amministrare il nostro DB Oracle dalla nostra Linux box, per fortuna la comunita Linux ci offre un'alternativa altrettanto valida: tora.
tora è un tool che permette di collegarsi con diversi DBMS tra cui Oracle, MySQL/MariaDB, PostgreSQL e via ODBC.
Per gli utilizzatori di Slackware Linux ho messo a disposizione il pacchetto precompilato per l'architettura x86_64 nel mio repository (www.lotar.altervista/slackbuilds/tora). Il pacchetto è compilato senza supporto a Oracle ma è possibile utilizzare lo SlackBuild per ricolpilarlo ed aggiungere facilmente il supporto. Per non installare il mastodontico Client Oracle è possibile utilizzare l'Instant Client seguendo la guida Oracle Instant Client su Linux.
Link utili
- Wine - http://www.winehq.org
- Instant Client Oracle - http://www.oracle.com/technetwork/topics/winsoft-085727.html
- tora - http://toradsql.com