Alternate database locations
This came up back in the days of postgres-6.x and I was told that it would
be working in the 7.x series. I'm sure that it is, but I'm not doing
something correctly.
I want to set up a database in a directory other than
/var/lib/pgsql/data/, so in both postgres' ~/.bash_profile and my
~/.bash_profile I added the line:
PGDATA2="/opt/paisley/"; export PGDATA2
then I restarted the postmaster.
When I try to create a database there I get the message that the
postmaster doesn't know of that directory:
[rshepard@salmo ~]$ createdb --location=PGDATA2 --template=template1 paisley
ERROR: Postmaster environment variable 'PGDATA2' not set
createdb: database creation failed
What have I done incorrectly, please?
TIA,
Rich
Dr. Richard B. Shepard, President
Applied Ecosystem Services, Inc. (TM)
2404 SW 22nd Street | Troutdale, OR 97060-1247 | U.S.A.
+ 1 503-667-4517 (voice) | + 1 503-667-8863 (fax) | rshepard@appl-ecosys.com
http://www.appl-ecosys.com
On Tue, 19 Feb 2002, Jokerman wrote:
i think you should create the database using 'initdb /opt/paislay'.
then you can add the PGDATA2 variable on your environment.
I thought of this, too. I created a directory called
/opt/paisley/acctdata/, gave it permissions of 700, changed the owner.group
to postgres.postgres, then ran initdb specifying that directory. It worked
just fine.
Next I changed the environment variable, PGDATA2, to
/opt/paisley/acctdata/ in postgres's and my ~/.bash_profile, restarted the
postmaster and got the same error message: createdb failed because the
postmaster doesn't understand PGDATA2.
Now I'll try it again without quotes on the path.
Thanks,
Rich
Import Notes
Reply to msg id not found: 000001c1b8f9$8feb1400$2900a8c0@pku.co.id | Resolved by subject fallback
Rich Shepard <rshepard@appl-ecosys.com> writes:
Next I changed the environment variable, PGDATA2, to
/opt/paisley/acctdata/ in postgres's and my ~/.bash_profile, restarted the
postmaster and got the same error message: createdb failed because the
postmaster doesn't understand PGDATA2.
Simply changing your .profile doesn't change the environment of your
running shell. Did you log out/back in? Or manually do
export PGDATA2=xxx
?
regards, tom lane
On Mon, 18 Feb 2002, Tom Lane wrote:
Simply changing your .profile doesn't change the environment of your
running shell. Did you log out/back in? Or manually do
export PGDATA2=xxx
Tom,
I logged out, then back in so the environment would be re-established.
Made no difference. I know it must be user error but I cannot find where I'm
going wrong.
Thanks,
Rich
Dr. Richard B. Shepard, President
Applied Ecosystem Services, Inc. (TM)
2404 SW 22nd Street | Troutdale, OR 97060-1247 | U.S.A.
+ 1 503-667-4517 (voice) | + 1 503-667-8863 (fax) | rshepard@appl-ecosys.com
http://www.appl-ecosys.com
On Mon, 18 Feb 2002, Rich Shepard wrote:
Simply changing your .profile doesn't change the environment of your
running shell. Did you log out/back in? Or manually do
export PGDATA2=xxxTom,
I logged out, then back in so the environment would be re-established.
Made no difference. I know it must be user error but I cannot find where I'm
going wrong.
Rather than beating on this dead horse, I decided to try another one. So,
I gave up on the alternative location and created the database in
/var/lib/psql/data/. Worked like a charm. :-)
Now I need to figure out why the copy command isn't copying tables from
the ascii files where they're all defined. Sigh. I'm calling it a night.
Rich
Hi all,
How do I build or get hold of the correct version of pg_dump and
pg_dumpall for PostgreSQL 7.0.1? I want to upgrade, but can't until I
can dump/restore the databases. I'm getting error messages when I
try, and gather from this list that they are due to a version
mismatch between PostgrSQL and pg_dump on my machine.
I had a look through the GNUmakefile in the source, but nothing
jumped out at me. Any help would be greatly appreciated!
--Ray.
--------------------------------------
Raymond O'Donnell
rod@iol.ie
rod@gti.ie
--------------------------------------
"Raymond O'Donnell" <rod@iol.ie> writes:
How do I build or get hold of the correct version of pg_dump and
pg_dumpall for PostgreSQL 7.0.1? I want to upgrade, but can't until I
can dump/restore the databases.
The recommended way is to use the current pg_dump --- 7.2 and 7.1
pg_dump are supposed to be able to dump 7.0.* databases. What
problems are you having, *exactly*?
regards, tom lane
On 19 Feb 2002, at 10:11, Tom Lane wrote:
The recommended way is to use the current pg_dump --- 7.2 and 7.1
pg_dump are supposed to be able to dump 7.0.* databases. What
problems are you having, *exactly*?
The error I'm getting is:
getTables(): relation 'vecs': cannot find function with iod 1647 for
trigger RI_ConstraintTrigger_61453
I posted before about errors using pg_dump, and the advice I got was
that I had a version mismatch. I'm now trying to get hold of a
current version of pg_dump, but I can't find it on the site, nor can
I find out how to compile it without compiling everything!
Thanks for the reply.
--Ray.
--------------------------------------
Raymond O'Donnell
rod@iol.ie
rod@gti.ie
--------------------------------------
"Raymond O'Donnell" <rod@iol.ie> writes:
The error I'm getting is:
getTables(): relation 'vecs': cannot find function with iod 1647 for
trigger RI_ConstraintTrigger_61453
Judging from the wording of the error message, it appears that the
version of pg_dump you are using is 6.5 (or even older), which will
certainly not work with a 7.0 or later database. But you should
have a compatible version of pg_dump somewhere in your installation.
Check your PATH.
regards, tom lane
I want to set up a database in a directory other than
/var/lib/pgsql/data/, so in both postgres' ~/.bash_profile and my
~/.bash_profile I added the line:PGDATA2="/opt/paisley/"; export PGDATA2
<snip>
ERROR: Postmaster environment variable 'PGDATA2' not set
createdb: database creation failed
your init script is using the '-s /bin/sh' argument to 'su', which means
bash runs in compat mode (sh is a soft link to bash on linux), and does not
use .bash_profile. you need to set up a file ~postgres/.profile (along side
of .bash_profile) and put your PGDATA2 environment export in there, or
possibly source .profile from .bash_profile. restart the postmaster and it
should now work.
guys, is there a good reason why the init script has to specify a shell
explicitly? the passwd entry for postgres should be good enough it seems
like... changing the init script at install time is a bad solution because
it gets over-written on postgres upgrades from RPM. and adding a .profile
file is not exactly intuative, and the need for it is not documented
anywhere that i could find.
Glen
On Tue, 19 Feb 2002, Glen Parker wrote:
your init script is using the '-s /bin/sh' argument to 'su', which means
bash runs in compat mode (sh is a soft link to bash on linux), and does not
use .bash_profile. you need to set up a file ~postgres/.profile (along side
of .bash_profile) and put your PGDATA2 environment export in there, or
possibly source .profile from .bash_profile. restart the postmaster and it
should now work.
Glen,
I'll be darned! I haven't learned this about shells in the four years I've
been running linux here. Sure makes a difference 'cause now the alternate
location works. Perhaps this ought to go into the docs somewhere -- or a
FAQ.
Many thanks!
Rich
Dr. Richard B. Shepard, President
Applied Ecosystem Services, Inc. (TM)
2404 SW 22nd Street | Troutdale, OR 97060-1247 | U.S.A.
+ 1 503-667-4517 (voice) | + 1 503-667-8863 (fax) | rshepard@appl-ecosys.com
http://www.appl-ecosys.com
location works. Perhaps this ought to go into the docs somewhere -- or a
FAQ.
agreed :-) I just added a blurb to the interactive docs about it, on the
alternate location page.
i think the correct longterm fix is to lose the '-s' option in the init
script... feature request!!
glen
http://www.postgresql.org/idocs/index.php?managing-databases.html
Show quoted text
what is the address of the interactive docs page?
Import Notes
Reply to msg id not found: 2E4528861499D41199D200A0C9B15BC0012F4695@taylorwhite.com | Resolved by subject fallback