Re: Customize the install directory of the postgres DB - Mailing list pgsql-general

From weixiang tam
Subject Re: Customize the install directory of the postgres DB
Date
Msg-id f5e703750911181751j52fd8339h87bf01bcc61ff72a@mail.gmail.com
Whole thread Raw
In response to Re: Customize the install directory of the postgres DB  (Greg Smith <greg@2ndquadrant.com>)
List pgsql-general
Hi all,

Thanks for the suggestion, i have tried out the option Thomas has mentioned by unzipping the db, and it works in our scenario. Just a question regarding the shared library. I have run the following command so that postgres can locate the shared library

/sbin/ldconfig /home/app/pgsql/lib
Below is the result after i executed it, are the following message expected? will it cause any issue on the postgres db?

/sbin/ldconfig: /home/app/pgsql/lib/libpgtypes.so.3 is not a symbolic link
/sbin/ldconfig: /home/app/pgsql/lib/libuuid.so.16 is not a symbolic link
/sbin/ldconfig: /home/app/pgsql/lib/libpq.so.5 is not a symbolic link
/sbin/ldconfig: /home/app/pgsql/lib/libecpg.so.6 is not a symbolic link
/sbin/ldconfig: /home/app/pgsql/lib/libecpg_compat.so.3 is not a symbolic link

Thanks again.
Wei Xiang

On Sat, Nov 14, 2009 at 7:10 AM, Greg Smith <greg@2ndquadrant.com> wrote:
Tom Lane wrote:
The real problem that I think the OP hasn't considered is whether
his "bundled" RPM package isn't going to conflict with a preinstalled
postgresql RPM.  Relocating the RPM, either dynamically as you suggest
or by just changing the install paths while building it, isn't a very
palatable solution since e.g. you really want libpq.so in /usr/lib,
psql in /usr/bin/, etc.
 
It sounds like they really do want all of those things to be installed in a subdirectory of their app, so I don't see a problem with them being there instead of the standard locations.  As long as they know how to run psql etc., not having them in the global PATH might be a feature rather than a problem.  The only detail I'm aware of they may not have considered is that a subdirectory install has the potential for the binaries to not be able to find their associated libraries, so they might either have to add those to the system loader configuration or set LD_LIBRARY_PATH before calling database binaries.  Ideally you'd find them via rpath or something so this isn't an issue, but it's easy to miss that the first time you make a change like this.


--
Greg Smith    2ndQuadrant   Baltimore, MD
PostgreSQL Training, Services and Support
greg@2ndQuadrant.com  www.2ndQuadrant.com


pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: Enum on-disk format
Next
From: Craig Ringer
Date:
Subject: Re: DB terminating