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!

Advertisements

2 thoughts on “PL/Java on CentOS 5

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s