Una volta installato il Server Oracle, il nostro desiderio sarebbe quello di accedere ai suoi “servigi” dalle altre macchine della rete. Qualsiasi applicazione Windows che permetta l’accesso ai Db utilizza almeno una delle due modalità principali disponibili (ed a volte entrambe): ODBC e JDBC. Le sorgenti dati ODBC (chiamate DSN, Data Source Name) sono configurabili tramite l’apposita voce del Pannello di Controllo Strumenti di Amministrazione -> Origine Dati (ODBC) e richiedono la presenza di un apposito Driver per ogni tipologia di DataBase. Per i collegamenti JDBC è necessaria la disponibilità di un eseguibile Java che permetta l’accesso remoto al Db. Quindi come installare il tutto sul nostro PC remoto ?
Fino a qualche tempo fa la cosa non era affatto semplice, ed implicava il download dell’OLE Db Provider per Microsoft .NET (circa 180 Mb). Ora è invece disponibile un Oracle Client XE di soli 30 Mb che (dovrebbe) risolvere il problema. L’installer è semplicissimo, ed il Menu aggiunto anche. Tutto pronto, quindi ? Non proprio….

Fiduciosi, cominciamo a creare la nostra connessione ODBC: richiamiamo il pannello di controllo delle Sorgenti Dati, click sul pulsante Aggiungi, selezioniamo il Driver Oracle in XEClient e voilà: un bel messaggio di errore. Rapido giro in Internet, e soluzione del problema: il Driver prevede la presenza della libreria MFC71.DLL, che l’eseguibile di Oracle “dimentica” di installare. Se siete fortunati, la libreria potrebbe già essere presente sul sistema (magari caricata da un’altra applicazione ed in questo caso niente messaggio di errore); se la Dea bendata vi è avversa, il file può essere scaricato facilmente da Internet dopo una piccola ricerca con Google, e trasferito in c:\windows\system32\. Ok, procediamo….
Dunque, assegnamo un nome alla Sorgente e scegliamo il TNS Service Name… Solo che purtroppo la casella a discesa è vuota: perchè ? Perchè il Client di Oracle non installa alcun servizio TNS e (quel che è peggio) nemmeno uno straccio di programma per crearlo. Quindi è nostro compito scrivere il file giusto al posto giusto: ma qual’è il file, e soprattutto, qual’è il posto? Il File (di testo semplice) si chiama tnsnames.ora ed il posto è la cartella C:\XEClient\network\ADMIN che il Client non crea, e quindi dovete pensarci voi. Comunque vi riporto un esempio con due servizi configurati:
Qui è possibile scaricare il file. La prima riga contiene il nome del servizio TNS (a vostro piacere); gli altri parametri riguardano il protocollo (TCP), l’host che esegue il server (nome o indirizzo IP), la porta (standard 1521). La voce SERVICE_NAME indica il nome del Servizio sul Server: XE per Oracle XE, ORCL per la versione Standard 10g. Basta modificare i parametri secondo le nostre esigenze con un editor di testo e salvare il file come tnsnames.ora nella cartella giusta. A questo punto il gioco è fatto: basta fornire delle credenziali esistenti (nome utente e password) e la nostra connessione va che è una meraviglia. Quindi siamo pronti ad accedere ai dati da ogni applicazione che usa i Driver ODBC (Ms Access ed OpenOffice.org, tanto per cominciare…).






Commenti recenti