Modulo DBD::Oracle Client 19C

Pubblicato da Alessandro Caredda il

Nell’articolo Modulo DBD::Oracle Client 19C descrivo il modo di collegarsi al database Oracle attraverso il modulo Perl DBD::Oracle.
Girando per il Web ho trovato molte guide interessanti, ma anche molto confusionarie e incomplete.

Quindi ho deciso di fare un tutorial in cui spiego i vari step e problemi incontrati.

Obbiettivo dell’attività: permettere la connessione al DB Oracle 19C attraverso un client Oracle e il modulo Perl DBD::Oracle installati su un Application Server con OS Linux Centos 8.

Per eseguire il test ho utilizzato un Database Oracle 19C con architettura Standalone su un server con IP 192.168.3.10, database SID TEST, porta 1521.

L’installazione Perl è stata effettuata sull’Application Server con IP 192.168.3.11 con un utente perl con permessi di sudoers.

Prima operazione da effettuare, scaricare il client Oracle dal seguente link: https://www.oracle.com/it/database/technologies/instant-client/linux-x86-64-downloads.html

I software da scaricare sono i seguenti:

Basic Package (RPM)

wget https://download.oracle.com/otn_software/linux/instantclient/199000/oracle-instantclient19.9-basic-19.9.0.0.0-1.x86_64.rpm

SQL*Plus Package (RPM)

wget https://download.oracle.com/otn_software/linux/instantclient/199000/oracle-instantclient19.9-sqlplus-19.9.0.0.0-1.x86_64.rpm

SDK Package (RPM)

wget https://download.oracle.com/otn_software/linux/instantclient/199000/oracle-instantclient19.9-devel-19.9.0.0.0-1.x86_64.rpm

Adesso procediamo con l’installazione del software Oracle con il seguente comando:

yum install oracle-instantclient19.9-basic-19.9.0.0.0-1.x86_64.rpm
yum install oracle-instantclient19.9-sqlplus-19.9.0.0.0-1.x86_64.rpm
yum install oracle-instantclient19.9-devel-19.9.0.0.0-1.x86_64.rpm

Dopo aver installato il Client Oracle, passiamo alla configurazione delle variabili nel file /home/perl/.bash_profile

vi /home/perl/.bash_profile
export ORACLE_BASE=/usr/lib/oracle/
export ORACLE_HOME=/usr/lib/oracle/19.9/client64/
export PATH=$ORACLE_HOME/bin:$PATH
export TNS_ADMIN=/usr/lib/oracle/19.9/client64/lib/network/admin export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/home/perl/perl5/lib export ORACLE_USERID="system/Ciao10@TEST" export ORACLE_DSN='dbi:Oracle:TEST'

Inserite le variabili passiamo alla configurazione del tnsnames.ora del client quindi, pendiamo la connect string dal tnsnames.ora del DB Server ed inseriamola nel file:

vi /usr/lib/oracle/19.9/client64/lib/network/admin/tnsnames.ora
TEST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.10)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = TEST)
)
)

A questo punto testiamo la connessione. Dovete essere in grado di accedere al database con il seguente comando:

sqlplus system/Ciao10@TEST

Se riuscite ad entrare possiamo passare all’installazione di Perl e dei moduli che permettono di sfruttare la connessione attraverso il client Oracle 19c.

Modulo DBD::Oracle Client 19C

L’installazione di Perl avviene con il seguente comando:

yum install perl perl-DBI perl-YAML -y

Scarichiamo il file DBD-Oracle-1.80.tar.gz con il seguente comando:

wget https://www.cpan.org/modules/by-module/DBD/MJEVANS/DBD-Oracle-1.80.tar.gz

Spacchettiamo il file .tar.gz con il seguente comando:

tar xzvf DBD-Oracle-1.80.tar.gz

Entriamo nella directory ed eseguiamo la compilazione del Modulo con i seguenti comandi:

cd DBD-Oracle-1.80
perl Makefile.PL
make
make test

Se il test termina con esito positivo, anche se non dovesse collegarsi all’istanza procediamo con il comando:

install

Se tutto è andato bene, a questo punto dovreste essere in grado di potervi collegare al database Oracle attraverso un script perl.

Nei prossimi giorni l’articolo sarà implementato con la procedura d’installazione attraverso cpan e alcuni script di connessione all’istanza Oracle.


0 commenti

Lascia un commento

Segnaposto per l'avatar