Tuesday, March 25, 2008

PL/Java on CentOS 5

Installare la libreria PL/Java su CentOS 5 è stata una dura battaglia.
Ovviamente abbiamo bisogno un Java Runtime per poter utilizzare questa
estensione, in questo caso io ho usato una JDK Sun 1.6.0 update 5 installato attraverso JPackage.

Per questa operazione ho prima scaricato il JDK dal sito della Sun (la versione RPM in self extracting) che ho eseguito e poi ho rimosso i package installati, poi

$ yum install jpackage-utils
$ wget http://mirrors.dotsrc.org/jpackage/1.7/generic/non-free/RPMS/java-1.6.0-sun-compat-1.6.0.05-1jpp.i586.rpm
$ rpm -Uvh jdk-6u5-linux-i586.rpm java-1.6.0-sun-compat-1.6.0.05-1jpp.i586.rpm

Innanzitutto è stato necessario aggiornare la versione di PostgreSQL dalla 8.1.11 (ultima versione disponibile sul repository di CentOS) alla 8.3.1 utilizzando un repository non ufficiale.

$ wget http://yum.pgsqlrpms.org/reporpms/8.3/pgdg-centos-8.3-2.noarch.rpm
$ rpm -Uvh http://yum.pgsqlrpms.org/reporpms/8.3/pgdg-centos-8.3-2.noarch.rpm
$ yum update


A questo punto è possibile installare la versione 1.4.0 di pljava per postgres 8.3

$ wget http://pgfoundry.org/frs/download.php/1598/pljava-i686-pc-linux-gnu-pg8.3-1.4.0.tar.gz
$ tar -zxvf pljava-i686-pc-linux-gnu-pg8.3-1.4.0.tar.gz


Spostiamo i file appena decompressi nelle locazioni più consone sotto CentOS

$ mv pljava.so /usr/lib/pgsql
$ mv pljava.jar /usr/share/java/


Adesso dobbiamo rendere visibili le librerie libjvm.so e poi installare il linguaggio in PostgreSQL

$ ldconfig
$ psql -U postgres template1 < install


Dove ovviamente install è il file che troviamo nella cartella decompressa di pljava!


2 comments:

kOoLiNuS said...

e ti "fidi" ad usare JPackage e repo non ufficiali per un server ?

Roberto Lo Giacco said...

Si, non è l'ufficialità del repository a darmi sicurezza quanto la serietà delle persone che ci sono dietro....