This is an old revision of the document!
Oracle Instant Client su Linux
Con questa guida vi spiegherò come installare ed utilizzare l'Instant Client Oracle su Linux.
A differenza del Client Oracle (~600MiB), l'Instant Client pesa notevolmente meno e non richiede particolari configurazioni o processi di installazione e pertanto si presta per essere utilizzato in quelle situazioni dove è necessario connettersi ad un DB Oracle in maniera veloce o dove lo spazio sulla nostra macchina non è sufficientemente grande.
Possiamo utilizzare l'Instant Client per connettersi ad un DB Oracle con PHP via PDO o Perl e DBI, o amministrarlo o fare delle estrazioni tramite tora.
Scarichiamo i pacchetti
Colleghiamoci al sito della Oracle, ed andiamo alla sezione Downloads → Database → Oracle Instant Client e successivamente clicchiamo su Instant Client for Linux x86 (o x86-64, in base alla nostra architettura).
Nella pagina successiva abbiamo la possibilità di scegliere il tipo di pacchetto: Basic, JDBC, SQL*Plus, SDK, ODBC.
- Basic: Contiene le librerie che permettono alle applicazioni OCI, OCCI e JDBC-OCI di connettersi al DB Oracle (~70MiB).
- Basic-Lite: Contiene le stesse librerie di Basic ma ha solo la localizzazione per l'Inglese ed il set di caratteri Europei (~30MiB).
- JDBC: Contiene librerie extra per connettersi al DB Oracle via JDBC (~1.5MiB).
- SQL*Plus: Contiene il client SQL*Plus e le relative librerie (~0.8MiB).
- SDK: Contiene gli header necessari per compilare le applicazioni che fanno uso del DB Oracle (~0.6MiB).
- ODBC: Contiene le librerie per connettersi al DB Oracle via ODBC (~1.2MiB).
Nell'esempio useremo l'ultima versione disponibile dell'Instant Client, ma la stessa procedura può essere applicata anche alle release precedenti che per quelle future
Installiamo
1. Scompattiamo
Da utente root
creiamo una directory in /opt
:
# mkdir /opt/oracle/
Prendiamo i nostri pacchetti ZIP e li scompattiamo nella directory appena creata:
# unzip -d /opt/oracle/ instantclient-{basiclite,sdk,sqlplus,jdbc,odbc}-linux.x64-12.1.0.1.0.zip
2. Rifiniture
Nel prossimo passo dobbiamo creare dei link simbolici per alcune librerie, in modo che i programmi che ne fanno uso possano trovarle con il soname corretto:
# cd /opt/oracle/instant_client_12_1 # ln -sf libclntsh.so.12.1 libclntsh.so # ln -sf libclntshcore.so.12.1 libclntshcore.so # ln -sh libocci.so.12.1 libocci.so
3. Variabili d'ambiente
Nel prossimo passo è necessario settare le variabili d'ambiente per fare in modo che l'Instant Client funzioni correttamente. Aggiungiamo al ~/.bash_profile
(o ~/.profile
) dell'utente che utilizzerà l'Instant Client le seguenti variabili d'ambiente:
export ORACLE_HOME=/opt/oracle/instant_client_12_1 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME export PATH=$PATH:$ORACLE_HOME
4. tnsnames.ora e sqlnet.ora
Nel caso abbiamo a disposizione i file tnsnames.ora
e sqlnet.ora
dobbiamo creare la loro directory:
# mkdir -p /opt/oracle/instant_client_12_1/network/admin # cp {tnsnames,sqlnet}.ora /opt/oracle/instant_client_12_1/network/admin # chmod 666 /opt/oracle/instant_client_12_1/network/admin/*.ora
5. Testiamo
Dopo aver installato tutto possiamo testare il corretto funzionamento dell'Instant Client tramite sqlplus:
$ sqlplus scott/tiger@ORCL