Re: upgrading postgres 7.3.4 to 9.1.9

From: Kevin Grittner <kgrittn(at)ymail(dot)com>
To: Khangelani Gama <kgama(at)argility(dot)com>, "pgsql-admin(at)postgresql(dot)org" <pgsql-admin(at)postgresql(dot)org>
Subject: Re: upgrading postgres 7.3.4 to 9.1.9
Date: 2014-08-04 18:19:18
Message-ID: 1407176358.38816.YahooMailNeo@web122301.mail.ne1.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

Khangelani Gama <kgama(at)argility(dot)com> wrote:

> in psql I keep getting the following errors: I saw what it is
> explained in
> http://stackoverflow.com/questions/12136033/install-pl-perl-in-postgresql
> But I am not sure if this installation command "yum install
> perl-devel" will
> work without affecting other special setups.

Hard to say.  I'm not even sure what OS this is or what you mean by
"other special setups".

> template1=#  CREATE EXTENSION plperl;
> ERROR:  could not open extension control file
> "/usr/local/pgsql9/share/extension/plperl.control": No such file or directory
> template1=#  CREATE EXTENSION plperlu;
> ERROR:  could not open extension control file
> "/usr/local/pgsql9/share/extension/plperlu.control": No such file or directory

/usr/local/pgsql9/ does not seem likely to be a location that a
packaged build would use, since 9.0, 9.1, etc. are different major
releases and packagers would normally want to make it easy to
install different major releases on the same system.  This looks
like it was probably a build and install from source code.  It
would help to know how the build was configured.  Please run
/usr/local/pgsql9/bin/pg_config to and post the output.

Most likely your best course will be to download the source code
for 9.1.14 to get bug fixes from the last year and a quarter, and
make a new build to a new export location (specific to at least
9.1; personally I like to use a separate directory for each minor
release to make the next minor upgrade take only a few seconds of
down time, but most people don't do it that way).  Make sure when
you configure for the new build you configure it to be compatible
with the old, but make sure that --with-perl is specified.If you
are not familiar with this sort of build and install process, you
should probably find someone to help you who is.

> Can I try the following , I just don’t want to break other
> databases already running on postgres9
>
> Stop all instances from running
>
> ./configure  --with-perl --prefix=$PATH
> Gmake
> Gmake install
>
> And then create an instance, and then pg_restore.

Personally, I would get that new build in a new directory, make
sure that it works with a PITR restore (or directory tree copy
while the database is stopped) of one of the other 9.1 clusters,
and make sure you can CREATE EXTENSION plperl before trying to
convert this 7.3 database.  Then you can move all the old clusters
over to the new executable by updating your service script to point
to the new executable running stop and then running start.  (I have
found that restart does not work for a minor upgrade -- a separate
stop -w and start -w is needed.)

--
Kevin Grittner
EDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Techie 2014-08-04 18:52:05 Re: Help with PITR WAL Restore and configuration.
Previous Message Jason Mathis 2014-08-04 17:36:57 Re: Help with PITR WAL Restore and configuration.