On Fri, 27 Apr 2007, Tom Lane wrote:
No, it hasn't. The PG code itself doesn't make any assumptions about the location of $PGDATA AFAIR, but there are a large number of packagings that assume specific places like /var/lib/pgsql/. If you've changed platforms or changed between installing from source and installing a prebuilt package, you might notice some variability. In any case you're certainly welcome to put $PGDATA anywhere you want.
Thanks, Tom. That does clear up what I've seen over the years. The executables go in /usr/bin/ (at least they do with Slackware), but $PGDATA is what I've seen changed between building from source and installing packages.
[ Thinks for a bit ... ] Note that "packaging" might extend further than meets the eye. For instance, if you want to move $PGDATA on a recent Red Hat system, you need to tweak not only the initscript but the SELinux policy, which by default will constrain the postmaster to write only under /var/lib/pgsql/.
I see in postgresql.SlackBuild where the data directories are specified. I'll change that from /var/lib/pgsql/data to /usr/local/pgsql/data and rebuild the package. Very much appreciated, Rich -- Richard B. Shepard, Ph.D. | The Environmental Permitting Applied Ecosystem Services, Inc. | Accelerator(TM) <http://www.appl-ecosys.com> Voice: 503-667-4517 Fax: 503-667-8863