Oracle SQL Developer on OS X: Connessione via TNS
La configurazione di connessioni OCI (Oracle Call Interface) attraverso Oracle SQL Developer richiede che sulla macchina sia prensente l’installazione dell’Instant Client per Mac OS X. L’ultima versione del client Oracle disponibile per la piattaforma OS X è la 10.2.0.4, non è ancora stato rilasciato l’aggiornamento alla versione 11g per la piattaforma OS X.
In questo breve articolo vedremo come configurare una connessione di tipo TNS (Transparent Network Substrate) verso un data base Oracle 11g Express Edition sfruttando il solo driver JDBC Thin. La versione di riferimento di Oracle SQL Developer è la 3.0.02. La procedura descritta è valida per qualunque istanza Oracle 10g/11g nelle sue varie edizioni.
Assumiamo i seguenti punti:
- Istanza Oracle 11g Express Edition o equivalente
- Listener istanza Oracle configurato per accettare connessioni esterne sulla porta standard 1521
- Configurazione SQL*Net del servizio sul file tnsnames.ora
Il file tnsnames.ora dovrà contenere la definizione del servizio a cui desideriamo connetterci, ovviamente è possibile configurare uno o più servizi all’interno di un unico file tnsnames.ora. Al Listato 1 è mostrato il contenuto del file tnsnames.ora con la definizione del servizio chiamato LiferayPortal.local che utilizzermo per la nostra connessione.
LiferayPortal.local = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP) (HOST = liferay-portal-db-1.local)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XE) ) )
Listato 1. Contenuto del file tnsnames.ora
Generalmente il file tnsnames.ora risiede (in installazioni standard, sia del client sia del server) all’interno della directory $ORACLE_HOME/network/admin, questa directory nella maggior parte dei casi (sistemi UNIX/Linux) è definita dalla variabile d’ambiente $TNS_ADMIN. In questo caso, non avendo nessuna installazione locale di Oracle Client o Oracle DB Server, salveremo il file tnsnames.ora all’interno della cartella documenti (~/Documents). Per maggiori informazioni sull’argomento dei servizi di rete Oracle, consiglio le seguenti letture:
Prima di procedere con la creazione di una nuova connessione, occorre indicare a Oracle SQL Developer la locazione del file tnsnames.ora, quest’operazione deve essere eseguita attraverso il pannello delle impostazioni (dal menu Tools=>Preferences) aprendo la sezione Database=>Advanced. In Figura 1 è illustrato come indicare la locazione del file tnsnames.ora.
A questo punto è possibile creare una nuova connessione al data base di tipo TNS, specificando (dalla combo) come Network Alias il nome LiferayPortal.local. In Figura 2 è illustrata la nuova connessione creata sulla base del servizio definito sul tnsnames.ora, mentre in Figura 3 è mostrato il browsing delle tabelle del data base dopo la connessione.