martedì 28 aprile 2009

Windows Vista e SP2-1503

Un mio collega ha appena acquistato il classico portatile con Microsoft Windows Vista Home Premium SP1 (eh vabbè...) e, dato che la sua attività routa attorno alla creazione di web apps che si interfacciano ad Oracle, ha provato ad installare, sul suddetto portatile, Oracle Instant Client 10.2.0.1. Ha seguito la procedura standard, optando per un'installazione da amministratore, impostato il tnsnames.ora con le entries corrette, eppure, lanciando un prompt di sqlplus, oppure Toad, ecc, si presenta il seguente errore:



Sul forum di OTN si consiglia di:

1) impostare correttamente le variabili d'ambiente ORACLE_HOME, TNS_ADMIN, LD_LIBRARY_PATH e PATH
2) controllare le impostazioni di protezione di Windows in quanto mancherebbe il permesso "create global objects"

Ora, la soluzione numero 1 non ha funzionato e, a quanto pare, in Windows Vista Home Premium SP1 non c'è la possibilità, o almeno io non l'ho trovata, di accedere alle policies locali di sicurezza, quindi non ho potuto verificare l'effettiva mancanza del privilegio "create global objects" per il mio utente.

San Google, come al solito, è venuto in mio aiuto con questo articolo di Christian Shay in cui l'autore indica che per Windows Vista è disponibile un pacchetto che consente di installare Oracle Client 10.2.0.3 direttamente, ossia senza la necessità, come avveniva in precedenza, di installare il client nella versione 10.2.0.1 per poi patcharla alla 10.2.0.3 che, di fatto, risolve il problema SP2-1503.
Riporto a mia volta il link per il download del client Oracle versione 10.2.0.3 per Windows Vista/windows 2008!

Installato questo pacchetto tutto è filato liscio, finchè non ho tentato una connessione al mio db di test con TOAD ritrovandomi con il seguente errore (bello Vista, sì sì):



Altra ricerca con Google ed approdo sul sito asktoad.com e più precisamente in questa FAQ; qui si legge che il problema è determinato da UAC: User Access Control, ossia il sistema di controllo degli accessi degli utenti di Windows Vista che, quando abilitato (e lo è per default), non consente ad un utente normale di accedere in scrittura alla directory Program Files. Sempre dalla FAQ si legge che quando Toad 9.5 viene installato crea un file chiamato lexlib.new che, nel momento in cui si lancia la GUI di Toad dovrebbe poter essere rinominato in lexlib.lxl, fatto non consentito proprio da UAC (a meno di eseguire Toad come utente Administrator).

Esistono due soluzioni:

* disabilitare UAC, ad esempio come indicato in questa guida
* eseguire Toad come utente amministratore

Io ho optato per la prima opzione, che è molto semplice da implementare!

Nessun commento: